理解向上转型和向下转型(对于初学者理解使用)
向上转型后 对象只能使用子类和父类共有的方法,子类的属性不能被使用,即属性不覆盖,覆盖的是方法
向下转型后,对象可以调用子类的所有方法和属性
向上转型的意义:
简单来说就是为了能够使用子类中已经重写(扩展或者说优化)了的方法。记住是重写的方法。
就好比如:你的旧手机的系统不行了你要更新系统,使用更多的优化后的东西。
向下转型的意义:
向上转型是向下转型的基础,注意注意注意:向下转型是因为向上转型之后,子类与父类不共同都有的方法不能使用,所以我要转回来,我要使用父类中没有但是子类拥有的方法
就好比如,手机新的系统有些功能没有了,夸张来说比如手机的WIFI功能没有了,那我的用旧的手机系统才能连WIFI。所以我要转回去 例子都是为了大家更好理解,可能会有不恰当的地方,可以评论区告诉我那没理解,或者是各位大神有更好的理解方法,非常愿意接受大家的方法
意义这里我说的可能会很多,因为个人原因,如果我不知道它的用处那么我学他干啥 我就是这样想的,必须知道其原因,不知道大家是不是和我一样
**向上转型核心:父类引用指向子类对象(实例)**
**代码**:*** Animal a=new Cat()***
**向下转型核心:父类引用的对象是子类的实例之后,即我已经向上转型过,我再将它转回来 这样我就可以使用子类的属性和所有方法了。**
**代码**:**
Animai a =new Cat()
Cat c=(Cat) a
注意注意注意:
引用只是名字 实例就是 new出来的对象
引用只是名字 实例就是 new出来的对象
引用只是是名字 实例就是 new出来的对象
重要的事情说三遍
注:仅个人学习使用,如有问题可以在评论区讨论,谢谢大家。