封装一般使用 private 关键字对属性进行封装(限制不合法的操作)
给予 set/get 方法访问
private String name;
//get方法
public String getName(){
return this.name;
}
//set方法
public void setName(String name){
this.name = name;
}
包
1、包允许将类组合成较小的单元(类似于文件夹),易于找到和使用相应的类文件
2、防止命名冲突:Java中只有在不同包中的类才能重名。有了包就容易管理
3、包允许在更广的范围内保胡磊、数据和方法
定义包
package 包名;
包的声明必须要在Java源文件的第一条非注释性语句,并且只能有一个包声明语句
加载包要用import关键字
继承
(继承是面向对象的三大特征之一)(Object类是所有类的父类)
语法:(通过extends关键字实现)
访问修饰符 class 类名<子类> extends 类名<父类>
子类可以从父类中继承?
1)子类可以继承public protected 修饰的属性和方法 ,不论子类和父类是否在同一个包中
2)子类可以继承默认修饰符修饰的属性和方法 ,但是子类和父类必须在同一个包中
3)子类不可以继承父类的构造方法
子类掉用父类的成员
super关键字调用父类的成员(属性,方法,构造方法)
访问父类的构造方法 super(参数);
访问父类的成员 super.属性/方法;
注意:
1)super正出现在子类的方法或构造方法中
2)super关键字不能获取父类private 修饰的属性或方法
3)在使用super(参数)调用父类的构造方法时需要把super(参数)放在方法体中的第一行
4)this() super() 只能存在一个(因为两个都需要放在方法体中的第一行)
重写(重写出现在子类和父类之间)
规则:同名同参相同返回值