Android访问修饰符的区别
2017-04-08 21:43
120 查看
根据访问修饰符的范围 public>protected>default>private,我们现在看看他们之间的区别在哪里:
public :能被所有的类(接口、成员)访问。
protected:只能被本类、同一个包中的类访问;如果在其他包中被访问,则必须是该成员所属类的子类。
private:成员变量和方法都只能在定义它的类中被访问,其他类都访问不到。对成员变量的进行获取和更改,一般用get(),set() ,public 方法。实现了Java面向对象的封装思想。
friendly(default)(缺省):访问权限与protected相似,但修饰类成员时不同包中的子类不能访问。
static:修饰变量,称为类变量或静态变量。静态变量是和类存在一起的,每个实例共享这个静态变量,在类加载时初始化。
final:被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取不能更改。修饰类是不能派生出子类,修饰方法时,不能被当前子类的方法覆盖。
abstract:不能创建abstract 类的实例。一般被继承,实现抽象方法。类只要有一个abstract方法,类就必须定义为abstract,但abstract类不一定非要保护abstract方法不可。
下表为Java访问控制符的含义和使用情况
方法重载时,private修饰的方法重写,语法不报错,可以通过编译, 但是调用时不会使用新写的方法,仍然调用父类的方法。
原文地址 http://xuyanzhi6688.blog.163.com/blog/static/2920588920115178519198/
根据访问修饰符的范围 public>protected>default>private,我们现在看看他们之间的区别在哪里:
public :能被所有的类(接口、成员)访问。
protected:只能被本类、同一个包中的类访问;如果在其他包中被访问,则必须是该成员所属类的子类。
private:成员变量和方法都只能在定义它的类中被访问,其他类都访问不到。对成员变量的进行获取和更改,一般用get(),set() ,public 方法。实现了Java面向对象的封装思想。
friendly(default)(缺省):访问权限与protected相似,但修饰类成员时不同包中的子类不能访问。
static:修饰变量,称为类变量或静态变量。静态变量是和类存在一起的,每个实例共享这个静态变量,在类加载时初始化。
final:被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取不能更改。修饰类是不能派生出子类,修饰方法时,不能被当前子类的方法覆盖。
abstract:不能创建abstract 类的实例。一般被继承,实现抽象方法。类只要有一个abstract方法,类就必须定义为abstract,但abstract类不一定非要保护abstract方法不可。
下表为Java访问控制符的含义和使用情况
类内部 | 本包 | 子类 | 外部包 | |
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
default | √ | √ | × | × |
private | √ | × | × | × |
原文地址 http://xuyanzhi6688.blog.163.com/blog/static/2920588920115178519198/
相关文章推荐
- 用Android访问本地站点---(localhost,10.0.2.2)要区别
- 2010年9月2日 访问修饰符总结、委托和事件的区别
- Java 中访问修饰符public,private,protected和default(friendly) 的区别
- java中4种修饰符访问权限的区别
- Java学习笔记(1):访问修饰符protected和default的区别
- 访问控制修饰符之间的区别
- java中4种访问修饰符的区别
- 用Android访问本地站点---(localhost,10.0.2.2)要区别
- Android中使用HttpGet和HttpPost访问HTTP资源和区别
- Android Studio——用Android访问本地站点---(localhost,10.0.2.2)要区别
- C#继承中访问修饰符的区别
- C#继承中访问修饰符的区别
- 用Android访问本地站点---(localhost,10.0.2.2)要区别
- C#类的访问修饰符区别介绍
- 用Android访问本地站点---(localhost,10.0.2.2)要区别
- c#中访问修饰符public,private,protected,internal,protected internal的区别
- public、private、protected 三种访问修饰符的区别
- 用Android访问本地站点---(localhost,10.0.2.2)要区别
- java中4种修饰符访问权限的区别及详解全过程,final修饰符 ,static修饰符 ,abstract修饰符
- Java访问权限修饰符的区别