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 ...
随机推荐
- minIO系列文章02---linux安装
目录 1.Minio介绍 2.安装MinIO 3. MinIO客户端 1.Minio介绍MinIO 是一个基于Apache License v2.0开源协议的对象存储服务.适合于存储大容量非结构化的数 ...
- 从源码中解析fabric区块数据结构(一)
从源码中解析fabric区块数据结构(一) 前言 最近打算基于fabric-sdk-go实现hyperledger fabric浏览器,其中最重要的一步就是解析fabric的上链区块.虽说fabric ...
- 物联网浏览器(IoTBrowser)-电子秤模块及二次驱动开发
本章介绍电子秤模块的示例功能以及二次开发称重驱动的代码,二次开发以顶尖OS2型号驱动为示例,实现方式与物联网浏览器(IoTBrowser)-顶尖OS2电子秤协议实现类似,不同的是电子秤只需要采集重量不 ...
- Linux命令-tail命令
Linux命令-tail 命令分析 命令格式 参数 例子 Linux命令-tail 命令分析 tail命令可用于查看文件的内容,通常用来查看日志,加上-f参数就可以查看最新的日志并且不断刷新. 命令格 ...
- C++ 通过SQLite实现命令行工具
本文介绍了一个基于 C++.SQLite 和 Boost 库的简单交互式数据库操作 Shell.该 Shell 允许用户通过命令行输入执行各种数据库操作,包括添加.删除主机信息,设置主机到特定主机组, ...
- 4.9 x64dbg 内存处理与差异对比
LyScript 插件中针对内存读写函数的封装功能并不多,只提供了最基本的内存读取和内存写入系列函数的封装,本章将继续对API接口进行封装,实现一些在软件逆向分析中非常实用的功能,例如ShellCod ...
- chrony客户端发送时间戳随机问题
现象 使用centos8的chrony给本机同步时间时,发现客户端发送给服务器的NTP包中,transmit timestamp(T3)的时间戳是随机的,同时,服务器端收到客户端请求的包后,原封不 ...
- CF1921F Sum of Progression 题解
题目链接:CF 或者 洛谷 一道经典的类型题,把这种类型的题拿出来单独说一下. 注意到问题中涉及到需要维护 \(a_{x+k\times step}\) 这样的信息,这样的信息很难用树型结构维护,比较 ...
- (C语言)每日代码||2024.1.10||scanf("%6f",&a)
#include <stdio.h> int main() { float a; scanf("%.3f", &a);//输入1234 printf(" ...
- NC51189 Mondriaan's Dream
题目链接 题目 题目描述 Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, a ...