封装性
一个类中属性为private
只对外暴露方法,访问为getXxx();修改为setXxx()。
继承性
使用关键字extends
java只能实现单继承,即一个类只能有一个父类
- 在子类的构造方法中可以访问父类的构造方法和普通方法;
- 在子类的普通方法中只可以访问父类的普通方法。
多态性
在实际中针对一个业务可能有多种权限的用户,则可以定义一个基本类作为父类,让其他用户继承自基类,具体使用:
- 定义方法的参数时是父类对象,传入的参数是子类对象;
- 定义方法的返回值类型是父类,实际返回的参数类型是子类。
抽象性
因为基类中的方法有的一定会被重写,所以可以将这一类方法定义为abstract的,此时类也必须为abstract的,反之,一个abstract类中可以没有abstract方法,但是只要有abstract方法,则在其子类中要么必须实现该方法,要么该子类也是abstract的。
- 抽象类:可以有抽象方法,也可以有非抽象方法;但是不能被实例化;如果子类继承了一个抽象类,要么必须重写父类的抽象方法,要么也是抽象类
- 抽象方法:只有方法名和方法形参而没有方法体;抽象方法必须存在于抽象类中