重写方法的访问权限

image-20210729171035477

image-20210729171109591

image-20210729171146524

image-20210729171413700

image-20210729171434166

image-20210729210836154

回看狂神的命令行传参

权限修饰符

在同一个类中访问

image-20210730091404231

image-20210730091420861

子类访问在同一个包下的父类

image-20210730091719246

访问在同一包下的,无关的类

image-20210730092416439

子类访问在不同包下的父类

image-20210730092812415

访问在不同包下的,无关的类

image-20210730094406424

总结

image-20210730094501365

final特性

image-20210730095036973

把s分配一个新地址报错

image-20210730095112401

static

所有对象共享static变量

image-20210730101131904

不建议通过对象名访问static变量

回看狂神Day15 static

建议通过类名直接访问static

image-20210730101732355

多态

image-20210730152003755

属性没有多态!!!

image-20210730153406307

image-20210730153934680

image-20210730154131054

多态存在的条件

image-20210730154344723

多态的好处

image-20210730162757895

参考:

https://blog.csdn.net/u013317445/article/details/81661178

以动物类举例:

  • 如图所示,现在有一个父类Animal,里面有eat和sleep方法,两个子类Cat和Dag,里面分别重写了父类的方法,我用了一个AnimalTools类集中存放方法的调用,Application为测试类

image-20210730172509056

如果要执行cat中的方法,就需要先建立Cat对象,然后调用工具类中的feedCat方法

弊端在于:每写一个子类动物,就需要在工具类中写一个与之对应的方法,很麻烦

这时候利用多态

  • 将工具类的方法写成以父类Animal为参数,然后执行的时候利用多态父类引用指向子类对象,调用对应方法

image-20210730175445717

 

 

posted on 2021-07-30 20:05  托马斯源  阅读(31)  评论(0编辑  收藏  举报