Java基础

Java基础-修饰符

2019-06-04  本文已影响0人  其实是白羊

Java中的修饰符经常用到的大概有:abstract(抽象的)、static(静态的)、public(公开的)、protected(受保护的)、private(私有的)、synchronized(同步的)、volatile(受保护的)、final(不可改变的)。

一、访问控制修饰符

1.public:他可以修饰类、成员变量、构造方法、成员方法。由他修饰的可以在程序内任何位置被访问。
2.protected:它可以修饰成员变量、构造方法、成员方法(不能修饰类,类只能是public的)。由它修饰的可以在子类或者同包下访问。

注意这里说的子类能访问,是子类实例对象能用,而不是在子类中new父类的实例去访问

3.default(和不写是一样的):它可以修饰成员变量、构造方法、成员方法。只能在同包访问。
4.private:它可以修饰成员变量、构造方法、成员方法。只能在本类使用。

二、abstract修饰符

可以用来修饰类(抽象类)、成员方法(抽象方法)。
注意:
1.抽象类中可以有非抽象方法,但是有抽象方法的一定是抽象类。子类继承抽象类,那就要实现父类的抽象方法,实现不完子类也要定义为抽象类。
2.static和abstract不能共用。
3.抽象类不能实例化,但是可以将抽象类的变量引用子类实现类的对象。
4.不能和private和final共用(private和final不倾向于向下向外扩展,而抽象类就是被继承实现用的)。

三、final修饰符

被final修饰的变量叫做常量,常量必须在声明时就显式的赋值(对于静态常量也可以通过静态代码块进行显示赋值),否则会报错。

变量是引用类型的话,只能一直引用那一个对象,但是可以改变对象里的属性值。

四、static

他可以修饰成员变量、成员方法和代码块。需要注意的是它修饰的都是属于类的,因此成员变量和成员方法都是在类加载时就进行了相关操作(分配内存,初始化值)。

不管是实例方法还是静态方法,他们的字节码都位于方法区。

上一篇下一篇

猜你喜欢

热点阅读