Java权限访问修饰符 亲测总结

Java 权限访问修饰符  亲测总结

1.类成员(包括:变量、静态变量、构造器、方法、静态方法、成员类;不包括:代码块、静态代码块)修饰符:private default protect public 
访问修饰符
  同一个类
  同包,子类
同包,非子类 不同包,子类 不同包,非子类
private        
default(friendly) 不用创建直接继承 创建再用
   
protected √(不用创建直接继承 创建再用 √(不用创建直接继承  
public 不用创建直接继承 创建再用 不用创建直接继承 创建再用


2.外部类修饰符:private default public abstract final
default:同一个包中可见
public:所有包所有类可见
abstract:抽象类
final:不可以被继承
(static:成员内部类, 用他修饰后,就成了静态内部类了,并且 可以当做普通类使用(先import外部成员),而不用先实例化一个外部类。)



3.接口修饰符:default public 
public:所有包可见
default:只能同一个包中可见
(1. 接口的变量总是需要定义成:public static final 类型 名称,但可以不用写的这么复杂,默认就是public static final
  2.接口的方法只能使用public、abstract修饰。

4.成员方法的修饰符:
①.普通类成员方法
public(公共控制符)
private(私有控制符)指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)
protected(保护访问控制符)指定该方法可以被它的类和子类进行访问。
final,指定该方法不能被重载。
static,指定不需要实例化就可以激活的一个方法。
synchronize,同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。
native,本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。

②.抽象类成员方法
abstract 修饰抽象的方法
public 普通公开方法
default     普通包内方法
protected 
(1.抽象方法(其前有abstract修饰)不能用private、static、synchronized、native访问修饰符修饰。
  2.抽象类除了包含抽象方法外与普通类无区别。)

③.接口成员方法
只能 public abstract修饰,并且abstract可以省略不写。
(1.接口中的方法全部是抽象方法(但其前的abstract可以省略),所以抽象类中的抽象方法不能用的访问修饰符这里也不能用。
  2.而且protected访问修饰符也不能使用,因为接口可以让所有的类去实现(非继承),不只是其子类,但是要用public去修饰。
  3.属性默认public static final修饰,即没有对象属性,且必须赋初值。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值