您的位置:首页 > 编程语言 > C#

.Net学习笔记----2015-07-21(C#基础复习05,里氏转换)

2015-07-21 12:37 941 查看
里氏转换:

1、子类可以赋值给父类

2、如果父类中装的是子类对象,那么可以将父类转换为子类对象。

3、as

4、is

如果一个子类继承了一个父类,那么这个子类除了可以使用自己的成员外,还可以使用从父类那里继承过来的成员

但是,父类永远只能使用自己的成员,而不能使用子类的成员

子类之间也不能互相使用对方的成员

class Program
{
static void Main(string[] args)
{
Person person = new Student();
Teacher t = person as Teacher; //as转换成功转成对应的对象,转换失败返回null
//Student s = (Student)person;//转换成功,因为person里装着Student的对象
//Teacher s = (Teacher)person;//转换失败,因为person里装着Student的对象
if(person is Student)
{
Console.WriteLine("OK,可以转换");
}
else
{
Console.WriteLine("NO,不可以转换");
}
//Console.WriteLine(s.ID);
Console.ReadKey();
//Student student = new Student();
//Teacher teacher = new Teacher();

}
}

public class Person
{
public string Name
{ get; set; }
}
public class Student : Person
{
public int ID
{ get; set; }

}
public class Teacher : Person
{
public double Salary { get; set; }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: