2012- 04-17 C#基础学习笔记(12)
2012-05-27 07:46
447 查看
2012.4.17C#基础学习笔记
——张伟
1. 类是不是可以继承?
Person
Student
Teacher
三个类,因为学生和老师都是任,所有抽象出来一个“人”的类,然后,现在让学生和老师都继承Person,只需在类名后加:(冒号)和Person
例如:class Student :Person
{
}
其中,在Person 中可以有构造函数,子类Student中也可以有构造函数
既然都能有构造函数,那么是否可以调用一下父类中的构造函数呢?
第一:如果子类继承父类
是否可以自动调用到父类的字段或者说属性?
可以。只需通过一个有参的构造函数再用一个关键字base()把参数传过去,这样,子类就能用到父类的构造函数,然后间接的给父类的字段或属性赋值了。
2. 里氏转换
is 的语法: 布尔类型 变量 = 子类对象 is 父类
如果布尔类型的变量为true则表示转换成功
如果布尔类型的变量为false则表示转换失败
例如:
Person p = newPerson();
Student s = newStudent();
bool b = s isPerson;
if(b)
{ Console.WriteLine(“转换成功,我成父亲啦”);}
else
{Console.WriteLine(“转换失败”);}
Console.ReadKey();
3. is 的用法: 对象或者是实例 is 类名
可以返回一个bool值,表示是否可以转化
判断父类是否能转化为子类的时候经常使用
父类要想转化成子类,需强制转换,和之前的int 和double 之间的转换类似
4. as 语法: 类型名 变量名 = 对象或实例 as 类型名;
虽然类可以进行转换,有隐式转换和显示转换(强制转换),但有的时候可能会出问题
可以通过is 或者as 进行判断转换,这样就不会报错了。
——张伟
1. 类是不是可以继承?
Person
Student
Teacher
三个类,因为学生和老师都是任,所有抽象出来一个“人”的类,然后,现在让学生和老师都继承Person,只需在类名后加:(冒号)和Person
例如:class Student :Person
{
}
其中,在Person 中可以有构造函数,子类Student中也可以有构造函数
既然都能有构造函数,那么是否可以调用一下父类中的构造函数呢?
第一:如果子类继承父类
是否可以自动调用到父类的字段或者说属性?
可以。只需通过一个有参的构造函数再用一个关键字base()把参数传过去,这样,子类就能用到父类的构造函数,然后间接的给父类的字段或属性赋值了。
2. 里氏转换
is 的语法: 布尔类型 变量 = 子类对象 is 父类
如果布尔类型的变量为true则表示转换成功
如果布尔类型的变量为false则表示转换失败
例如:
Person p = newPerson();
Student s = newStudent();
bool b = s isPerson;
if(b)
{ Console.WriteLine(“转换成功,我成父亲啦”);}
else
{Console.WriteLine(“转换失败”);}
Console.ReadKey();
3. is 的用法: 对象或者是实例 is 类名
可以返回一个bool值,表示是否可以转化
判断父类是否能转化为子类的时候经常使用
父类要想转化成子类,需强制转换,和之前的int 和double 之间的转换类似
4. as 语法: 类型名 变量名 = 对象或实例 as 类型名;
虽然类可以进行转换,有隐式转换和显示转换(强制转换),但有的时候可能会出问题
可以通过is 或者as 进行判断转换,这样就不会报错了。
相关文章推荐
- unity3d基础学习笔记17:C# C++结构体
- C#学习笔记12:枚举、结构、数组基础学习
- .Net学习笔记----2015-07-21(C#基础复习04,面向对象语法和继承复习)
- C#学习笔记12-GC的工作原理基础和垃圾回收机制
- 黑马程序员_基础学习笔记(12)
- 黑马程序员---学习笔记17:OC基础(4)
- .Net学习笔记----2015-07-22(C#基础复习09,虚方法、抽象方法、接口复习)
- C#基础语法:Base关键字学习笔记
- C# 学习笔记一(图形绘制基础1 GDI+)
- .Net学习笔记----2015-07-23(C#基础复习11,字符串复习)
- C#学习笔记8:HTML和CSS基础学习笔记
- c#基础学习小笔记
- 自学asp.net笔记 - 第一节 C#基础简略学习
- C#学习笔记(二十一):使用文件基础
- C# 基础学习笔记
- [C#基础]线程学习笔记(一)
- C#学习笔记一 基础知识点整理
- 黑马程序员之C#编程基础学习笔记:提示用户输入年龄,如果大于等于18,则告知用户可以查看,如果小于10岁,则告知不允许查看,如果大于等于10岁,则提示用户是否继续查看(yes,no),如果输入的是ye
- 2112-03-31 C#基础学习笔记(1)
- 2012-04-12 C#基础学习笔记(9)