类、方法、成员变量和局部变量的可用修饰符
修饰符 | 类 | 成员方法 | 构造方法 | 成员变量 | 局部变量 |
abstract | Y | Y | _ | _ | _ |
static | _ | Y | _ | Y | _ |
public | Y | Y | Y | Y | _ |
protected | _ | Y | Y | Y | _ |
private | _ | Y | Y | Y | _ |
synchronized | _ | Y | _ | _ | _ |
native | _ | Y | _ | _ | _ |
transient | _ | _ | _ | Y | _ |
volatile | _ | _ | _ | Y | _ |
final | Y | Y | _ | Y | Y |
1、访问控制修饰符:
Java语言采用访问控制修饰符来控制类及类的方法和变量的访问权限,从 而只向使用者暴露接口,但隐藏实现细节。
公开级别:用public修饰,对外公开
受保护级别:用protected修饰,向子类及同一个包中的类公开
默认级别:没有访问控制修饰符,向同一个包中的类公开
私有级别:用private修饰,只有 类本身可以访问,不对外公开
顶层类只有默认或公开级别,因此不能用private和protected来修饰。
2、abstract修饰符:
用来修饰类和成员方法,抽象类不能被实例化,抽象方法不提供具体的实现 。
抽象类中可以没有抽象方法,但包含了抽象方法的类必须被定义为抽象类
如果子类没有实现父类中所有的抽象方法,那么子类也必须被定义为抽象类
没有抽象构造方法,也没有抽象静态方法
抽象类中可以有非抽象的构造方法,创建子类的实例时可能会调用这些构造 方法
抽象类及抽象方法不能被final修饰符修饰(原因?)
时间: 2024-11-01 12:14:08