更新时间:2019-09-16 11:54:14 来源:极悦 浏览3806次
今天极悦java培训机构小编为大家介绍“java类成员访问控制权限”,希望通过此文大家能够掌握java类成员访问控制权限,下面就随小编一起看看java类成员访问控制权限有哪些?
在JAVA中有四种访问控制权限,分别为:private, default, protected, public
1、Private
如果一个成员方法或变量名前使用了private, 那么这个成员只能在类的内部使用。
2、Default
如果一个成员方法或变量名前没有使用任何访问控制符,就为default。默认的访问控制成员可以被这个包中的其它类访问(包括这个包中的子类内部以及这个包中所有类以对象.成员的方式访问)。如果这个子类不在这个包中,则子类也不能访问父类的默认访问控制成员
3、Protected
这个成员既可以被这个包中其它类访问,也可以被不同包中的子类内部访问
4、Public
可以被所有类访问,不管访问类与被访问类在不在同一个包中
总结如下:
以下是示例代码:
1、包myjava.learn.package1:
Person.java
package myjava.learn.package1;
public class Person {
private int a_pri = 10; // private只能在本类被访问, 子类也不能访问
int a_defaut = 11;
protected int a_prot = 12;
public int a_pub = 13;
}
PersonPackage1.java
package myjava.learn.package1;
public class PersonPackage1 extends Person{
void fun(){
// 以下当然可以被访问,因为在同一个包中的类可以访问default, protected, public
this.a_defaut = 12;
this.a_prot = 13;
this.a_pub = 14;
System.out.println( this.a_defaut );
}
}
Main.java
package myjava.learn.package1;
public class Main {
public static void main( String args [] ){
PersonPackage1 pp = new PersonPackage1();
pp.fun();
// 同一包中的类可以以[对象.成员]访问default, protected, public
System.out.println( pp.a_defaut );
System.out.println( pp.a_prot );
System.out.println( pp.a_pub );
}
}
2、包myjava.learn.package2:
Main.java
package myjava.learn.package2;
import myjava.learn.package1.PersonPackage1;
import myjava.learn.package1.Person;
// 其它包中的子类
class PersonPackage2 extends Person{
void PrintAttr(){
// 不同包的子类只能访问父类的public, protected
System.out.println(this.a_prot);
System.out.println(this.a_pub );
}
}
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 其它包中的类(对象.成员, 不是子类),只能访问public成员
PersonPackage1 pp = new PersonPackage1();
System.out.println(pp.a_pub);
PersonPackage2 pp2 = new PersonPackage2();
pp2.PrintAttr();
}
}
以上就是极悦java培训机构小编介绍的“java类成员访问控制权限有哪些?”的内容,希望对大家有帮助,更多java最新资讯请继续关注极悦java培训机构官网,每天会有精彩内容分享与你。
相关免费视频教程推荐-java入门学习零基础教程下载
java类成员的访问权限:
java类的访问权限:
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习