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 四种不同的权限修饰的更多相关文章

  1. Java 四种权限修饰符

    Java 四种权限修饰符访问权限 public protected (default) private 同一个类(我自己) yes yes yes yes 同一包(我邻居) yes yes yes n ...

  2. Java四种访问修饰符

    Java 四种访问权限 一.概述 访问等级比较:public > protected > default > private 无论是方法还是成员变量,这四种访问权限修饰符作用都一样 ...

  3. Java语言中的访问权限修饰符

    一个Java应用有很多类,但是有些类,并不希望被其他类使用.每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用.如何能做到访问控制呢?就需要使用访问权限修饰符. Java语 ...

  4. Java 四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor

    介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端执行一个异步任务你还只是如下new T ...

  5. Java四种线程池

    Java四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor 时间:20 ...

  6. Java四种引用包括强引用,软引用,弱引用,虚引用。

    Java四种引用包括强引用,软引用,弱引用,虚引用. 强引用: 只要引用存在,垃圾回收器永远不会回收Object obj = new Object();//可直接通过obj取得对应的对象 如obj.e ...

  7. Pascal、VB、C#、Java四种语法对照表

    因为工作原因,自学会了vb后陆续接触了其它语言,在工作中经常需要与各家使用不同语言公司的开发人员做程序对接,初期特别需要一个各种语法的对照比,翻看了网络上已有高人做了整理,自己在他基础上也整理了一下, ...

  8. Java四种引用--《深入理解Java虚拟机》学习笔记及个人理解(四)

    Java四种引用--<深入理解Java虚拟机>学习笔记及个人理解(四) 书上P65. StrongReference(强引用) 类似Object obj = new Object() 这类 ...

  9. (转载)new Thread的弊端及Java四种线程池的使用

    介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端 执行一个异步任务你还只是如下new ...

  10. 不可访问内存 Java四种引用包括强引用,软引用,弱引用,虚引用

    小结: 1.不可访问内存是指一组没有任何可访问指针指向的由计算机程序进行动态分配的内存块. 2.垃圾收集器能决定是否一个对象还是可访问的:任何被确定不可访问的对象将会被释放. https://zh.w ...

随机推荐

  1. 【JS 逆向百例】某空气质量监测平台无限 debugger 以及数据动态加密

    关注微信公众号:K哥爬虫,持续分享爬虫进阶.JS/安卓逆向等技术干货! 声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后 ...

  2. vs2019系统内置方法无提示

    有个同事问我为什么他的vs编写C#代码,对于引用System.dll中的方法,鼠标移上去没有方法的使用说明或接口注释,具体可以看下面的截图,而我绝大多数情况下是使用Rider开发,并没有遇到这个问题, ...

  3. PGL图学习项目合集&数据集分享&技术归纳业务落地技巧[系列十]

    PGL图学习项目合集&数据集分享&技术归纳业务落地技巧[系列十] 1.PGL图学习项目合集 1.1 关于图计算&图学习的基础知识概览:前置知识点学习(PGL)[系列一] :ht ...

  4. linux(centos) 下搭建svn服务器

     1. 使用yum安装svn yum -y install subversion 安装完成之后,验证安装结果 此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行 若需查看svn安 ...

  5. centos环境下MySQL8.0.25离线升级至8.0.32

    环境 centos7 mysql8.0.25 下载新版本mysql 下载地址:https://dev.mysql.com/downloads/mysql/ 升级 备份数据 先保存原始数据,进入mysq ...

  6. DBGRIDEH 鼠标滚动 和 点击单元格解决思路【无意间看到,主从表】

    DBGRIDEH 鼠标滚动 和 点击单元格因为我是用2个DBgridEH,主表数据变化(用的是OnCellClick),明细表也变化.现在的情况时,鼠标滚动时,明细表数据不变化好像也没看到相关的事件请 ...

  7. vue3的宏到底是什么东西?

    前言 从vue3开始vue引入了宏,比如defineProps.defineEmits等.我们每天写vue代码时都会使用到这些宏,但是你有没有思考过vue中的宏到底是什么?为什么这些宏不需要手动从vu ...

  8. HTTP协议发展历程

    HTTP协议发展历程 HTTP超文本传输协议是一个用于传输超文本文档的应用层协议,它是为Web浏览器与Web服务器之间的通信而设计的,HTTP协议到目前为止全部的版本可以分为HTTP 0.9.HTTP ...

  9. 解决unable to find valid certification path to requested target

    问题描述 最近java程序去调用远程服务器接口时报错了: I/O error on POST request for "https://XXX.xyz/create": sun.s ...

  10. 大米新闻微信小程序和Springboot新闻管理系统项目源码

    介绍 本项目分为大米news小程序端和springboot新闻管理系统后台项目.小程序主要用来新闻展示,后台管理系统用于提供相关新闻API. 项目源码 参考:https://www.bilibili. ...