封装

image-20210715085425632

private私有

image-20210715090305094

set、get方法

image-20210715092648036

Alt+Insert

image-20210715092924646

image-20210715093227511

快速输出

image-20210715093610329

封装的意义

image-20210715094806280

年龄=999,不合法

image-20210715094128321

在set方法中加入if判断

image-20210715094508041

image-20210715094531601

image-20210715094559183

方法的重载

println为例

image-20210715095054831

可以输出各种参数

查看两个方法是否相同

  1. 看方法名

  2. 看参数列表

继承

image-20210715102226160

实例

父类Person中的方法say被子类Student继承,在main方法中经由子类调用

image-20210715113259842

子类也可以继承父类的属性

image-20210715142240307

前提是属性与方法都是public,除了public,还有private,default,protected,一般public用于继承

私有的东西无法继承

image-20210715142400424

无法直接操作private属性,但可以通过父类提前留的get、set方法操作

image-20210715142922929

快捷键:

在类中空白处按ctrl+H,打开继承树

image-20210715143704191

现在在Application中重新new,把Person类清空

image-20210715143929544

person.中有很多方法

image-20210715144019450

没有定义但却存在,类似于无参构造

image-20210715144237640

例如查看String类

image-20210715144334802

查看Object类

image-20210715144457181

确实有getClass方法

image-20210715144539210

显式定义与不写没有任何区别

image-20210715144659505

image-20210715144850436

一个儿子只能有一个爸爸,但是一个爸爸可以有多个儿子

Super

  • 操作1

image-20210715161506516

  • 操作2

image-20210715162101171

  • 操作3

把Person类中print方法的public改成private,报错,私有的东西无法被继承

image-20210715162254722

  • 操作4

image-20210715163304888

super调用父类的构造器必须放在子类构造器代码第一行,否则会报错

image-20210715163425678

  • 操作5

image-20210715163906094

但把它拿前面来之后

image-20210715163944673

所以,要么调用父类,要么调用子类,只能写在第一行

  • 操作6

回看Day11.构造器

假设父类没有无参

image-20210715170424784

如果一定要调用有参,只要在子类super加个参数就行了

image-20210715170810080

super注意点

image-20210715190320814

方法的重写

首先创建A类继承B类,里面都有test()方法,new一个A类对象a

image-20210715191912962

image-20210715191930146

然后

image-20210715192145716

发现new的都是A,结果却不同

image-20210715192640530

将A类与B类的test方法去掉静态修饰符static

这个o代表重载

image-20210715193042857

Alt+Insert重写方法

image-20210715193159770

image-20210715193252281

默认调用父类的方法,可以重写自己的

image-20210715193323308

刚才调用A走A,调用B走B方法

现在两个都走A方法

image-20210715193604689

image-20210715193700914

子类重写了父类的方法

image-20210715201935913

重写的关键词只能是public

重写总结

image-20210715204740438

image-20210715204755423

 来源:b站狂神

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