一. 四大修饰符
在认识Java的三大特性之前我们的知道在java中的四大修饰符是什么,分别是 public、private、protected、空(默认)
public 在本类, 本包类,本包子类,外包子类,外包类都可以访问到
private 只能在本类中可以访问
protected 在本类, 本包类,本包子类,外包子类可以访问
缺省(无) 在本类, 本包类,本包子类, 可以访问
本类中 | 本包类 | 本包子类 | 外包类 | 外包子类 | |
---|---|---|---|---|---|
public | 可以 | 可以 | 可以 | 可以 | 可以 |
privare | 可以 | 可以 | 可以 | 不可以 | 可以 |
protected | 可以 | 可以 | 可以 | 不可以 | 不可以 |
缺省(无) | 可以 | 不可以 | 不可以 | 不可以 | 不可以 |
二. this关键字
this关键字两种用法, 一种用来转发构造器,还有就是代表当前对象, this只能写在实列方法和构造器内,静态属性和方法直接拿类名调用就行了,没必要用到this关键字,this转发构造器,必须写在构造器的第一句代码上!
public class Student {
public Student() {
this("旺财");
System.out.println("不带参数的构造器");
}
public Student(String name) {
System.out.println("带参数的构造器");
}
public static void main(String[] args) {
new Student();
}
}
结果:
带参数的构造器
不带参数的构造器
三.封装
封装就是把属性私有化,让属性更加安全,然后给每个私有属性配两个方法,一个方法set用来赋值,一个方法get用来拿值, 注意一点,Boolean的不是用get方法来拿值的,而是使用 is方法
四. 继承 extens
在继承了里面,除了私有成员外(private),子类可以访问父类任何成员任何方法,如果子类的方法名和父类一样,那就是重写,重写的子类方法会覆盖父类方法! 在调用方法的时候,子类没有这个方法就会去调用父类,永远都是优先调用子类的方法,java是一个单继承语言,一个子类只允许继承一个父类,不能有多个
五.super关键字
重点注意: super和this关键字不能出现在同一片代码中,super关键之有两种用法,第一种是写在子类方法里面可以调用父类的方法
第二中用法就是写在构造器里面,但是必须要写在构造器第一句,这种方式是用来调用父类构造器,下图中首先是先加载父类构造器,然后再是子类构造器
六: final关键字
final写在类里面那么这个类就是一个最终类不可继承, 写在属性里面那这个属性就是常量属性(常量属性无法改变,在初始化话的时候必须给他赋值), 写在方法里面这个方法就无法重写,写法如下
public final class dog {
private final String name="旺财";
public final void chishi(){
System.out.println("旺财正在吃粑粑");
}
}
七.多态
多态就是让父类做模板,子类做实现,子类继承父类,当时访问的时候只能访问子类那些重写父类的方法,子类的方法想要访问就必须要把强制转换成子类才能访问