博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java权限访问修饰符 亲测总结
阅读量:4030 次
发布时间:2019-05-24

本文共 1276 字,大约阅读时间需要 4 分钟。

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修饰,即没有对象属性,且必须赋初值。)

转载地址:http://fhqbi.baihongyu.com/

你可能感兴趣的文章
Pyhton、Numpy、Pandas排序小结
查看>>
pandas时间序列
查看>>
pandas时间序列频率处理
查看>>
绘图和可视化(matplotlib)
查看>>
绘图和可视化(pandas)
查看>>
绘图和可视化(seaborn)
查看>>
Vim日常使用
查看>>
计算机网络第一记:网络核心
查看>>
信息检索:基于知识图谱和深度学习的文本表示和搜索(Explicit and distributed semantics for text representation and retrieval)
查看>>
计算机网络第二记:协议层次
查看>>
计算机网络第三记:网络安全
查看>>
深度学习训练中如何处理NaNs
查看>>
机器学习与其他相似概念
查看>>
深度学习库提供了什么?
查看>>
Theano中如何只更新一部分权重,用法及理由。
查看>>
深度学习实践
查看>>
机器学习探索性数据分析的数据类型
查看>>
机器学习探索性数据分析的数据类型(补充)
查看>>
机器学习中典型工作流程
查看>>
数据挖掘十大算法 and 算法概述
查看>>