Java 四种不同的权限修饰
private 私有属性 只在同一个包下 同一个类中可以调用
同一个包下,不同的类中,可以调用 缺省,保护(protected),公共(public)可以调用,
不同的包下的类中,继承关系,可以调用 保护(protected),公共(public)
不同的类的包下(非继承),可以调用 公共(public)
1 package com.bytezero.permission;
2 /*
3 *
4 * 四种不同的权限修饰
5 *
6 */
7 public class Order
8 {
9 private int orderPrivate;
10 int orderDefault;
11 protected int orderProtected;
12 public int orderPublic;
13
14
15
16 private void methodPrivate()
17 {
18 orderPrivate = 1;
19 orderDefault = 2;
20 orderProtected = 3;
21 orderPublic = 4;
22 }
23
24 void methodDefault()
25 {
26 orderPrivate = 1;
27 orderDefault = 2;
28 orderProtected = 3;
29 orderPublic = 4;
30
31 }
32 protected void methodProtected()
33 {
34 orderPrivate = 1;
35 orderDefault = 2;
36 orderProtected = 3;
37 orderPublic = 4;
38 }
39 public void methodPublic()
40 {
41 orderPrivate = 1;
42 orderDefault = 2;
43 orderProtected = 3;
44 orderPublic = 4;
45 }
46
47
48
49 }
1 package com.bytezero.permission;
2
3 public class OrderTest
4 {
5 public static void main(String[] args) {
6 Order order = new Order();
7
8 order.orderDefault = 1;
9 order.orderProtected =2;
10 order.orderPublic = 3;
11
12 order.methodDefault();
13 order.methodProtected();
14 order.methodPublic();
15
16
17 //同一个包中的其他类,不可以调用Order类中的私有的属性,方法
18 // order.orderPrivate = 4;
19 // order.methodPrivate();
20 //
21 }
22 }
1 package com.bytezero.permission2;
2
3 import com.bytezero.permission.Order;
4
5 public class OrderTest
6 {
7 public static void main(String[] args) {
8
9 Order order = new Order();
10 order.orderPublic = 1;
11
12 //不同包下的普通类(非子类),要使用order类,不可以调用声明为private,
13 //缺省,protected权限的属性,方法。
14
15 // order.methodPublic();
16 //
17 // order.orderPrivate = 2;
18 // order.orderDefault = 3;
19 // order.orderProtected = 4;
20 //
21 //
22 // order.methodDefault();
23 // order.methodProtected();
24 // order.methodProtected();
25
26
27
28
29 }
30
31
32 public void show(Order order)
33 {
34
35
36 order.orderPublic = 1;
37
38 //不同包下的普通类(非子类),要使用order类,不可以调用声明为private,
39 //缺省,protected权限的属性,方法。
40
41 // order.methodPublic();
42 //
43 // order.orderPrivate = 2;
44 // order.orderDefault = 3;
45 // order.orderProtected = 4;
46 //
47 //
48 // order.methodDefault();
49 // order.methodProtected();
50 // order.methodProtected();
51
52 order.orderPublic = 1;
53
54 //不同包下的普通类(非子类),要使用order类,不可以调用声明为private,
55 //缺省,protected权限的属性,方法。
56
57 // order.methodPublic();
58 //
59 // order.orderPrivate = 2;
60 // order.orderDefault = 3;
61 // order.orderProtected = 4;
62 //
63 //
64 // order.methodDefault();
65 // order.methodProtected();
66 // order.methodProtected();
67
68 }
69
70
71
72
73
74
75
76
77 }
1 package com.bytezero.permission2;
2
3 import com.bytezero.permission.Order;
4
5 public class SubOrde extends Order {
6
7 public void method()
8 {
9 orderProtected = 1;
10 orderPublic = 22;
11
12 methodProtected();
13 methodPublic();
14
15
16 //在不同包的子类中,不能调用Order类中声明private和缺省权限属性和方法
17 // orderDefault = 3;
18 // orderPrivate = 4;
19 //
20 // methodDefault();
21 // methodPrivate();
22
23
24 }
25
26 }
Java 四种不同的权限修饰的更多相关文章
- Java 四种权限修饰符
Java 四种权限修饰符访问权限 public protected (default) private 同一个类(我自己) yes yes yes yes 同一包(我邻居) yes yes yes n ...
- Java四种访问修饰符
Java 四种访问权限 一.概述 访问等级比较:public > protected > default > private 无论是方法还是成员变量,这四种访问权限修饰符作用都一样 ...
- Java语言中的访问权限修饰符
一个Java应用有很多类,但是有些类,并不希望被其他类使用.每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用.如何能做到访问控制呢?就需要使用访问权限修饰符. Java语 ...
- Java 四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor
介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端执行一个异步任务你还只是如下new T ...
- Java四种线程池
Java四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor 时间:20 ...
- Java四种引用包括强引用,软引用,弱引用,虚引用。
Java四种引用包括强引用,软引用,弱引用,虚引用. 强引用: 只要引用存在,垃圾回收器永远不会回收Object obj = new Object();//可直接通过obj取得对应的对象 如obj.e ...
- Pascal、VB、C#、Java四种语法对照表
因为工作原因,自学会了vb后陆续接触了其它语言,在工作中经常需要与各家使用不同语言公司的开发人员做程序对接,初期特别需要一个各种语法的对照比,翻看了网络上已有高人做了整理,自己在他基础上也整理了一下, ...
- Java四种引用--《深入理解Java虚拟机》学习笔记及个人理解(四)
Java四种引用--<深入理解Java虚拟机>学习笔记及个人理解(四) 书上P65. StrongReference(强引用) 类似Object obj = new Object() 这类 ...
- (转载)new Thread的弊端及Java四种线程池的使用
介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端 执行一个异步任务你还只是如下new ...
- 不可访问内存 Java四种引用包括强引用,软引用,弱引用,虚引用
小结: 1.不可访问内存是指一组没有任何可访问指针指向的由计算机程序进行动态分配的内存块. 2.垃圾收集器能决定是否一个对象还是可访问的:任何被确定不可访问的对象将会被释放. https://zh.w ...
随机推荐
- vm-storage在全部都是新metric情况下的写入性能测试
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 vm-storage中,写入索引的性能要比写入data p ...
- 强化学习技巧三:Python多进程
1.Python多进程模块 Python中的多进程是通过multiprocessing包来实现的,和多线程的threading.Thread差不多,它可以利用multiprocessing.Proce ...
- 构建LVS负载均衡集群
LVS即Linux虚拟服务器,目前 LVS 已经被集成到 Linux 内核模块中,该项目在 Linux 内核实现了基于 IP 的数据请求负载均衡调度方案,LVS集群采用IP负载均衡技术和基于内容请求分 ...
- 使用私有gitlab搭建gitbook持续集成
目录 环境搭建 1. 安装 Node.js 2. 安装 gitbook 3. 安装 Gitlab Runner 4. 注册Runner gitbook 配置 1. 目录结构 2. 命令行 3. 插件 ...
- ABC 305
题目列表 前三题过水,第四题分类讨论两个端点之间的距离和所在位置是清醒或睡眠 即可. E 题意:一张图上有一些结点有保安,每个保安有不同的警戒度 \(h_i\),定义 一个结点是安全的 为这个结点可以 ...
- 查看调整cpu频率及模式
使用cpufrequtils查看调整cpu频率及模式 cpufrequtils是一个查看和修改CPU频率GHz的工具 有些物理服务器使用默认频率进行运行,这时可以使用该工具进行就该CPU的核心频率 安 ...
- JS Leetcode 213. 打家劫舍 II 题解分析,在动态规划基础上感受分治算法的魅力
壹 ❀ 引 本题来自LeetCode 213. 打家劫舍 II,难度中等,属于前面我们做过的198. 打家劫舍的升级版,难度同样为中等,题目描述如下: 你是一个专业的小偷,计划偷窃沿街的房屋,每间房内 ...
- JS 一篇文章弄懂Object.defineProperty,现学现用,来试试相关笔试题吧
壹 ❀ 引 早在大半年前,掘金某位用户分享的面试题整理中有一题,简述let与const区别,你能自己模拟实现它们吗?,题目意思大概如此,时间久远我也很难找到那篇文章,当时看到此题对于const实现我的 ...
- 罗克韦尔 FT View使用占位符(全局对象参数)来指定弹出窗口的显示名称
罗克韦尔 FT View使用占位符(全局对象参数)来指定弹出窗口的显示名称 标签占位符 标签占位符能实现将单个图形显示用于多个相似的操作,从而节省开发和维护应用程序的时间. 例如,要为使用同一台机器将 ...
- NC24370 [USACO 2012 Dec S]Milk Routing
题目链接 题目 题目描述 Farmer John's farm has an outdated network of M pipes (1 <= M <= 500) for pumping ...