官术网_书友最值得收藏!

Upcasting

Notice that I've written new Square. This is upcasting. Here, this involves converting the object on the right-hand side, because it's derived from its Quad. On the left-hand side, you can make a Quad namespace and put an object that is of a derived type on the right side; so, we'll call this one Square and then enter a side length of 4.

Next, enter the following directly below this line:

Quad rect = new Rectangle("Rectangle", 2, 5);

Again, we put a Quad namespace on the left-hand side, and this time we called it rect. We give it the name Rectangle, and then we put in two sides of lengths 2 and 5.

Now, you can store this in a list, for example, which you can sort. Imagine if you had many of these, you would need a way to sort this information. So now, go to the top of this file, and enter the following beneath using System:

using System.Collections.Generic;

Next, under the Quad rect... line, enter the following:

List<Quad> lst = new List<Quad>(new Quad[] { sqr, rect, rect2, sqr1 });

We'll call this list new List<Quad>, and to initialize a list you can always use an array. To do this, type new Quad and then initialize it with sqr and rect. This is how you can always initialize a list within an array.

Then, to sort the list, enter the following directly below this line:

lst.Sort();

So, this makes sense now. It doesn't give an error. Imagine if you didn't have IComparable<Quad> at the top of the GenInterface class. This sort would not work. If you cut IComparable<Quad>, and then take the CompareTo method out, you will have problems. So, for our purposes, we now have a way of sorting these Quads classes.

For the last stage, start by entering the following below the Sort line:

if(lst[0] is Square)

So, is is a new keyword. You can use it to check whether something is of a certain type.

主站蜘蛛池模板: 佳木斯市| 巩义市| 来凤县| 郑州市| 柳州市| 阿拉善盟| 古丈县| 扎囊县| 中江县| 青阳县| 泽库县| 新绛县| 上高县| 永州市| 紫金县| 拉孜县| 晋宁县| 陕西省| 沙雅县| 合水县| 宁蒗| 阿克陶县| 曲水县| 锦屏县| 宽城| 定日县| 马关县| 龙门县| 新巴尔虎右旗| 汝南县| 长泰县| 翼城县| 眉山市| 巴林右旗| 南康市| 博野县| 长白| 平乐县| 车险| 寻甸| 社旗县|