Unity基础班学习第十天

2021-03-21 19:39发布

一、面向对象的三大特性

      继承、封装和多态

继承:把类里面相同的成员抽离出来放到一个公共的类里面,其他类都继承这个公共的类,这样公共类里面的成员就可以被继承的类所使用,被继承的类称为父类(基类),继承的类称为子类(派生类)

类在继承时需要注意以下事项:
1.一个子类同时只能继承一个父类
2.类的继承具有可传递性
3.object是所有类的父类,其它任何类型都直接或者间接的继承自object类

多态:相同类型的不同对象,执行相同的行为表现出来不同的结果,只需要把父类里面的方法写成虚方法,如果子类没有重写该虚方法,调用的时候会调用父类的虚方法,如果子类里面重写了父类的虚方法,子类调用方法时,会调用子类重写后的方法

里氏转换原则:
1.所有父类对象所在的位置均可以被子类的对象所代替,即:可以把子类的对象赋值给父类的对象,此时,父类的对象在调用成员时,只能调用父类里面的成员,子类里面的成员是无法调用的

2.可以把父类的对象转成子类
       装箱:把一个值类型的变量赋值给引用类型的过程称为装箱;
       拆箱:把一个引用类型的变量赋值给值类型的过程称为拆箱;
       在编程过程中应尽量避免装箱和拆箱的操作,减少内存的消耗.

使用as关键字,把一个引用类型转换成另一个引用类型,如果转换成功,返回一个具体的对象,如果转换不成功,返回值为null

在子类创建对象时,会先调用父类的构造方法,然后再调用子类的构造方法
            Student s1 = new Student(21, "lisi");
            Senior s = new Senior("202103", "zhangsan", 23);

心得体会:

       任重而道远!!