JAVA_SE基础——59.权限访问修饰符

Posted 脚本叔叔

tags:

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

了解了包的概念,就可以系统的介绍Java中的访问控制级别。在Java中,针对类、成员方法和属性提供了四种访问级别,分别是private、default、protected和public。


权限访问修饰符(权限从大到小依次往右排)
  public(公共) protected(受保护) default(缺省) private(私有)
同一个类
同一个包 ×
子父类 × ×
不同包 × × ×


public 和 private 在这里我就不一一介绍了,想必大家比我还熟悉了吧。
还有protected和default 在同一个类中  我也不验证了(因为最小权限的private都可以在同一个类中互相访问,这两个也肯定可以了)



验证protected修饰的属性 在同一个包能不能被访问。:
package d;
class Demo7 {
	
		protected int a = 1 ;
	
}
package d;
public class Demo8 {
	public static void main(String[] args) {
		Demo7 z = new Demo7();
		System.out.println("a="+z.a);
	}
}
运行结果:
技术分享

能访问的到!

验证default(缺省)修饰的属性 在同一个包能不能被访问。:

package d;
class Demo7 {
	int a = 1 ;	
}
package d;
public class Demo8 {
	public static void main(String[] args) {
		Demo7 z = new Demo7();
		System.out.println("a="+z.a);
	}
}
运行结果:
技术分享

能访问的到!


验证protected修饰的属性 在子父类中能不能被访问。:
package d;
class Demo7 {
	protected int a = 1 ;	
}
package d;
public class Demo8 extends Demo7 {
	public static void main(String[] args) {
		Demo8 z = new Demo8();
		System.out.println("a="+z.a);
	}
}
运行结果:
技术分享

能访问的到!


验证default(缺省)修饰的属性 在子父类中能不能被访问。:

package d;
class Demo7 {
	int a = 1 ;	
}
package e;
import d.*;
public class Demo8 extends Demo7 {
	public static void main(String[] args) {
		Demo8 z = new Demo8();
		System.out.println("a="+z.a);
	}
}
运行结果:
技术分享

不能访问的到!

验证protected修饰的属性 在不同包中能不能被访问。:
package d;
class Demo7 {
	protected int a = 1 ;	
}
package e;
import d.*;
public class Demo8{
	public static void main(String[] args) {
		Demo7 z = new Demo7();
		System.out.println("a="+z.a);
	}
}
运行结果:
技术分享

不能访问的到!

验证default(缺省)修饰的属性 在不同包中能不能被访问。:

package d;
class Demo7 {
	int a = 1 ;	
}
package e;
import d.*;
public class Demo8{
	public static void main(String[] args) {
		Demo7 z = new Demo7();
		System.out.println("a="+z.a);
	}
}
运行结果:
技术分享
不能访问的到!


交流企鹅:654249738,和自学者交流群:517284938




































以上是关于JAVA_SE基础——59.权限访问修饰符的主要内容,如果未能解决你的问题,请参考以下文章

一脚踩进java之基础篇21——面向对象 (访问修饰符代码块)

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用

Java基础之访问权限修饰符

阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第6节 权限修饰符_6_四种权限修饰符

Java基础学习笔记十二 类抽象类接口作为方法参数和返回值以及常用API

Java基础——关于访问权限的一道例题