java垃圾回收器,导包,封装,private关键字,继承,修饰符,方法的重写
java垃圾回收器
java中的垃圾回收器,是java自动将垃圾回收的.
命令是:System.gc();调用该方法,只是通知垃圾回收机制来回收垃圾.回收机制可能不做回收处理.回收机会会根据情况判断是否是垃圾再做是否要回收的处理.
回收的情况有:
- 匿名状态,如
new Garbage();
- 对象无引用状态,如
Garbage garbage = new Garbage();
garbage = null;
finalize()方法,如果回收垃圾,第一步会调用这个方法.
导包
1.在package下,类名上写导包,如:
import java.util.Scanner;
2.当前类有多个包需要导,如在util包下的Scanner,和Random,使用*号.如
import java.util.*
3.可以再使用全额限定名来处理导包
java.util.Scanner sc = new java.util.Scanner(System.in);
封装
封装:隐藏内部实现的细节,对外提供公共访问的方式
作用,优点:
隐藏实现细节
提高程序的安全性
提高程序的复用性
标准的javabean类要求:
1.类的公共被public修饰
2.属性私有化
3.提供设置和访问器
4.只有一个无参构造
private关键字
private关键字是封装的其中一个体现.
被private关键字修饰的成员变量,其属性是私有化的.
继承
继承的作用:
提高代码的复用性.
父类,基类,超类
子类,派生类
如何使用继承:
定义子父类,使用extends关键字
子类 extends父类
定义父类:抽取一系列子类的功能,定义为父类
子类一旦继承父类,就能够使用父类中的内容
子类可以定义自己独有的内容,扩展父类的功能
java中类只能单继承,可以多实现
单继承的优点:
使用简单
单继承的缺点:
局限性大,不便于后期维护
开闭原则:
面向对象的设计原则之一
对修改关闭,对扩展开放
修饰符
public : 类中,同包不同类,不同包的子类,不同包其他类
protected :类中,同包不同类,不同包的子类
default: 类中,同包不同类
private: 类中.
super 和 this
super:指代父类对象
super使用在构造器的首行,调用父类的某个构造器
super(参数列表)
使用在首行
默认在子类构造器的首行会调用父类空构造,如果显示定义super(参数),不会再默认调用父类空构造了
需求:当创建父类对象时,需要使用父类中的其他构造器,通过super(参数)显示定义调用哪一个,否则默认调用空构造
注意:this和super不能同时存在与构造器的首行调用构造器,除了显示定义this(),隐式调用super(),仅仅调用父类空构造
区分同名问题
如果存在子父类中成员同名问题,默认调用子类的,就近原则
如果不存在同名,默认调用父类,相当于省略了super.
this和super都不能使用在static内容中
创建对象:先父类后子类(默认创建的父类对象在子类的内存空间中,外部无权使用默认创建的在子类内存中的父类对象,如果需要使用父类对象,自己手动创建父类对象)