访问修饰符

Posted suger-4

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了访问修饰符相关的知识,希望对你有一定的参考价值。

访问修饰符   本类           同包              不同包

                               子类   非子类      子类    非子类

Public            ****         ****    ****        ****     *****   (该类或非该类均可访问)

Protected         ****         ****    ****        ****             (该类及其子类的成员可以访问,同一个包中的类也可以访问)

默认(default)             ****         ****    ****            (相同数据包中的类可以访问)

Private           *****                                                     (只有该类可以访问)(使用private 必须加final,不能被重写)

 

Get***( )----访问器(必须有返回值)

Set***( )----修改器(可以传参,即void

 

私有属性+get/set方法和公有属性的区别:

1、私有属性不能在别的类中直接访问,只能通过get方法进行访问,通过set方法进行设置。所以,可以通过删除getset方法,将属性做成只读或只写属性,公有属性做不到

2、私有属性可以在set方法中,进行属性值是否合法的验证,公有属性做不到。

 

静态初始化块static{  },只在类加载时执行一次。

实例初始化块{   },在产生对象时执行,在super()之后执行。

以上是关于访问修饰符的主要内容,如果未能解决你的问题,请参考以下文章

在Java和c#中如果不写访问修饰符,类和类成员默认的是啥访问修饰符?

Java_修饰符详解

在Java和c#中如果不写访问修饰符,类和类成员默认的是啥访问修饰符?

Java中成员属性默认访问修饰符是啥

比类访问修饰符限制更少的成员访问修饰符有啥用?

java修饰符