1 封装
封装 , 也就是把客观事物封装成抽象的类 , 并且类可以把自己的数据和方法只让可信的类或者对象操作
2. 继承
它可以使用现有类的所有功能 , 并在无需要重新编写原来的类的情况下对这些功能进行扩展,
继承可以使用extends关键字来实现 ,
继承是受权限修饰符影响的
子类不会继承父类的构造方法,但是会调用(子类初始化前会先初始化父类) , 如果父类的构造器带有参数,则必须在子类的构造器中显式地通过 super 关键字调用父类的构造器并配以适当的参数列表..
1 子类无法继承private修饰的属性和方法
2 子类和父类在同一包下,可以继承default权限的属性方法
3 子类可以对父类进行扩展,拥有自己的属性和方法
4 子类可以重写父类的方法(前提是可以继承到这个方法)
继承中的关键字:extends、super 、this、final
1)、extends:单一继承,可以让一个类继承一个父类
2)、super:我们可以通过super关键字来实现对父类成员的访问,用来引用当前对象的父类。
3)、this:指向自己的引用。引用自身的属性和方法。
4)、final:当用final修饰类时,是把类定义为不能继承的,即最终类
用于修饰方法时,该方法不能被子类重写
用于修饰属性时,和static一起使用,表明为一个常量,各类的所有对象共用一个值
3 多态
多态是指不同的子类在继承父类后分别都重写覆盖了父类的方法,即父类同一个方法,在继承的子类中表现出不同的形式, 简单点说:"一个接口 , 多种实现"就是同一种事物表现出的多种形态。
多态的向上转型
父亲的引用指向了子类的对象
语法: 父类类型 引用名 = new 子类类型();
特点: 1 .可以调用父类中的所有代码
2 最终执行效果是看子类
多态的向下转型
语法: 子类类型 引用名 = (子类类型)父类引用;
只能强制父类的引用 , 不能强转父类额对象,,,,,要求父类的引用必须指向的是当前目标类型的对象 当向下转型后,,可以调用子类类型中所有的成员