Java成员可用修饰符
最近在自学Java,跟着B站老师看,学到了面向对象编程,由于东西比较多,且杂乱,就按照自己的理解整理了一个思维导图,是按照Java的类中的内部成员可用的修饰符来整理的。下面分别是思维导图和框架图,仅供跟我一样的小白参考。
Java成员可用修饰符
类(外部类)
权限修饰符
- public
- 缺省
final
-
表示该类不能被继承
-
示例
public class ClassTest {
}
final class Person{
String name;
int age;}
class Student extends Person{
//报错:The type Student cannot subclass the final class Person
}
-
abstract
- 不能实例化,不能直接创建对象
- 抽象类是用来被继承的
属性(全局变量)
权限修饰符
- private
- 缺省
- protected
- public
static
-
该属性表示所有该类的对象,共享
-
存储在“方法区”或“元空间”
-
其中一个对象对它修改,其他的对象的该属性值也会被修改
- 例如,银行开户,唯一的账号,用来自增,每增加一个用户,ID+1,此时ID可用static修饰
-
它的get/set也是static的
-
可以使用“显示初始化”,还可以使用“静态代码块”进行初始化
-
final
-
该属性不能被修改,即是常量属性
-
该属性必须手动初始化
- A、显示初始化
- B、构造块中初始化
- C、在每一个构造器中初始化
abstract
-
用abstract关键字来修饰一个类,这个类叫做抽象类
- 抽象类不可以使用final关键字,因为使用final关键字的类表示不可被继承,跟abstract用来被继承相矛盾
-
不能用abstract修饰私有方法、静态方法、final的方法、final的类
-
抽象类是用来被继承的,抽象类的子类必须重写父类的抽象方法,并提供方法体。若没有重写全部的抽象方法,仍为抽象类
局部变量
权限修饰符
- private
- 缺省
- protected
- public
final
- 该局部变量的值一旦被赋值,就不能被修改,即常量
方法
权限修饰符
- private
- 缺省
- protected
- public
static
-
该方法是类方法
- 可以通过“类名.‘调用
final
- 该方法不能被重写
abstract
- 用abstract来修饰一个方法,该方法叫做抽象方法
- 只有方法的声明,没有方法的实现。以分号结束:public abstract void talk();
- 含有抽象方法的类必须被声明为抽象类
构造器
权限修饰符
- private
- 缺省
- protected
- public
代码块
static
- 静态代码块,在类加载并初始化时调用,并且只会执行一次
- 一般用于静态属性的赋值
内部类
权限修饰符
- private
- protected
static
final
abstract
接口
权限修饰符
- public
- 缺省
abstract
思维导图
有错误欢迎指正,谢谢阅读