首页 > 编程语言 > 详细

Java学习日记1——访问修饰符

时间:2020-01-17 01:15:40      阅读:79      评论:0      收藏:0      [点我收藏+]

学习了很久的Java,一直没想起来做个笔记,只顾得去体会一下Java的语言逻辑,今天开始做一下吧。

Java的基本语法不多说,和C++差不太多。

由于Java完全面向对象,所以我觉得Java的权限修饰符很重要,掌握起来也感觉不是那么容易。

因为我还没学接口,所以如下权限只是在类层次谈论。

Java的权限修饰符有如下几种:

private default protected public

其中,private的限制最严格,被其修饰的变量和方法只有本类才可以使用

而default则是在同一包内可以访问

public则是在任何地点都可以调用

protected在本包内和子类中可以调用,注意,如果父子类不在同一个包,那么父类的protected方法只能在子类中可以调用,而不是子类可以调用。

如下代码:

 1 package testProtected.test;
 2 
 3 public class Father {
 4     protected int num;
 5     protected void showNum(){
 6         System.out.println(num);
 7     }
 8 }
 9 
10 package testProtected.test;
11 
12 public class Son1 extends Father {
13     public void main(){
14         num = 2;
15         showNum();
16     }
17 }
18 
19 
20 package testProtected.test2;
21 
22 import testProtected.test.Father;
23 
24 public class Son2 extends Father {
25     public void main(){
26         num = 1;
27         showNum();
28     }
29 }
30 
31 package testProtected.main;
32 
33 import testProtected.test.Father;
34 import testProtected.test.Son1;
35 import testProtected.test2.Son2;
36 
37 public class main {
38     public static void main(String[] args) {
39         Father fa1 = new Father();
40         Son1 son1 = new Son1();
41         Son2 son2 = new Son2();
42         fa1.showNum();//error,因为不在同一包
43         son1.showNum();//error
44         son2.showNum();//error
45         son1.main();//ok
46         son2.main();//ok
47     }
48 }

当然情况可以更复杂,这里贴一个菜鸟教程的链接:

https://www.runoob.com/w3cnote/java-protected-keyword-detailed-explanation.html

Java学习日记1——访问修饰符

原文:https://www.cnblogs.com/RainCurtain/p/12203738.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!