块、封装、继承、重写、访问修饰符

块{ }是一个作用域

{ }写在方法中:普通语句块|局部代码块 执行时机:方法调用的时候

{ }写在类中方法外:构造块 执行时机:创建对象时

static{ }写在类中方法外:静态块 执行世纪:类加载时

构造块中的代码先于构造器中的代码之前执行,因为在编译时,编译器会自动把构造块中的代码编译到构造器代码之前——>反编译工具

如果有多个构造块,则从上到下依次执行

静态块中的内容在类第一次加载完成之后,只执行一次。

如果有多个静态块,则从上到下依次执行

静态块——main——构造块——构造器

Debug:调试工具

可以查看代码程序运行期间的执行流程,可以观察每执行一步的数据的变化

1.打断点

2。debug运行

GC垃圾回收

可回收的对象垃圾:

1.匿名对象

2.对象无引用状态

程序员无权操作调用垃圾回收机制,可以通过System.gc()通知

不要定义与jdk相同的包,相同的类,否则会引起很多你觉得莫名其妙的问题

不需要导包的情况:

​ 1.java.lang包下的内容

​ 2.同包下的内容

如果使用非当前包下内容:

​ 1.使用手写全名 包名+类名,只在当前位置有效

​ 2.import导包

​ 3.*模糊匹配 不会影响运行效率,只会影响编译效率

​ 4.静态导入 只导入静态的内容(属性|方法)

javabean

一系列类的统称:根据一些对象抽取共性定义的类成为模板类|图纸

1.类是公共的

2.至少提供一个空构造

3.私有的属性

4.公共的访问方式

安全隐患问题:先要在外部不允许直接操作成员

介绍一个关键字private,成员修饰符

私有的,只能在当前本类中使用,外部类中无法使用

属性一旦私有,就要配合设置器和访问器使用setter getter

私有的属性一定安全么?1.不允许外部直接操作 2.设置器和访问器是方法,可以进行逻辑判断

注意:以后自定义的模版类,属性都私有,并且同时提供一对公共的访问方式设置访问器

面向对象的三大特性:封装 继承 多态

封装:隐藏内部的实现细节,对外提供公共的访问方式

方法,属性私有化是封装具体的体现

私有是封装,封装就是私有?不对,私有是封装,封装不仅仅是私有

好处:1.提高代码的复用性 2.提高代码的安全性

继承

继承:子承父业

子类|派生类:继承别的类的类

父类|基类、超类:被继承的类

继承如何使用:

子类 extends 父类

继承的优点:

子类一旦继承父类就可以使用父类中所有的内容

提高代码的复用性

子类定义扩展的内容,子类独有的内容

特点:

java是单继承机制,但是可以实现接口

一个类可以有多个子类,但是一个子类只能有一个父类

单继承的优点:使用简单

单继承的缺点:不便于后期维护

面向对象的设计原则之一:开闭原则:对修改关闭,对扩展开放

修饰类的符号只能有两个:public|default

权限修饰符,内容被访问的权限

本类同包类不同包的子类不同包的其他类
publicYYYY
protectedYYY
defaultYY
privateY

特点:都是成员修饰符,不能修饰局部,default关键字默认的,省略不写

重载和重写

方法的重载:

​ 同一个类中的多个方法

​ 方法名相同

​ 参数列表不同

方法的重写:

​ 1、不同的类

​ 2、继承|实现

​ 3、方法签名相同

如果子父类中构成方法的重写,子类对象调用时候会调用子类重写的那个方法,对父类的方法进行屏蔽

检测方法重写的方式:

​ 1.左侧会出现向上的三角形

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值