1.访问修饰符:public(公共的):公共的访问权限,所有类都能访问
default(缺省的):在当前包内可访问
protected:在当前类和它的子类中可访问
private:在当前中可访问
2.封装
(1)在Java中通过关键字private实现封装
(2)概念:封装是把过程和数据封闭起来以避免外界直接访问,外界只能通过与已定义的接口实现对数据的访问
(3)优点:它可以隐藏私有数据,让使用者只能通过公共的访问来访问这些字段;方便数据检查,有利于保护对象信息的完整性;便于修改代码,提高代码的可维护性。
3.封装的实现步骤:
(1)将结构体、字段的首字母小写;
(2)给结构体所在的包提供一个工厂模式的函数,首字母大写,类似一个构造函数;
(3)提供一个首字母大写的 Set 方法(类似其它语言的 public),用于对属性判断并赋值;
(4)提供一个首字母大写的 Get 方法(类似其它语言的 public),用于获取属性的值。
3.继承
(1)继承的本质:在构造子类对象时,父类的构造方法一定会被调用,先被执行
(2)概念:继承就是子类继承父类的特征和行为,使得子类对象具有父类的特征,或子类从父类继承方法,使得子类具有父类相同的行为
(3)Java中的继承时单继承,只有一个父类
(4)class 子类 extends 父类
(5)如果父类和子类中都定义了初始化器,则构造子类对象时,调用顺序:父类的静态初始化器--->子类静态初始化器--->父类的初始化器--->父类的构造方法--->子类的初始化器--->子类的构造方法
(6)方法的重写
① 子类可重写从父类继承的方法,当调用方法时会优先调用子类的方法。
② 返回值类型、方法名、参数类型及个数 都要与父类继承的方法相同,才叫方法的重写。
4.多态
(1)多态的实现:
①定义一个基类,在此基类基础上再派生出若干个子类
②子类要重写父类中的方法,使子类对象能够表现出子类的行为
③用父类对象名表示子类对象---对象的上转型对象
④通过父类对象名调用被子类重写的方法
5.抽象类特征:
①抽象类不能被实例化,即不能用new关键字去产生对象
②抽象方法只需要声明,而不需实现(无方法体)
③抽象类被子类继承,子类必须重写抽象方法
④抽象类中可以有非抽象(实例)方法,也可以有抽象方法。如果一个类中有抽像方法,该类必须定义成抽象类
5.接口
(1)Java接口是由若干个常量和抽象方法组成的集合。接口中的方法只有声明没有实现
(2)格式如下:[修饰符]interface接口名[extends父类口列表]{
[public][static][final]数据类型 变量名=常量值;
[public][abstract]返回值类型 方法名(参数列表)
}
6.final关键字
可以修饰类,也可以修饰类中的方法,还可以修饰变量
(1)包括final常量;最终方法;final类,最终类
(2)修饰的形式:
final class 类名
{
//......
}