不同权限访问详细细节

 1 package com.package1;
 2 
 3 /**
 4  * 程序执行入口和调用方法在不同类但在同一个包中,除了private方法,其他任何权限的方法都可以都可相互调用
 5  * @author Administrator
 6  *
 7  */
 8 public class Source {
 9     public static void main(String[] args) {
10         SamePackage samePackage = new SamePackage();
11         System.out.println("================XX void====================");
12         samePackage.method1();
13         samePackage.method2();
14         samePackage.method4();
15         System.out.println("================XX static void====================");
16         samePackage.method11();
17         samePackage.method21();
18         samePackage.method41();
19         System.out.println("================XX static String public(protected(default))====================");
20         samePackage.method111(samePackage.method211(samePackage.method411("qqqqqqqqqq")));
21         System.out.println("================XX static String default(protected(public))====================");
22         samePackage.method411(samePackage.method211(samePackage.method111("qqqqqqqqqq")));
23     }
24 }
 1 执行结果:
 2 ================XX void====================
 3 SamePackage method1!
 4 SamePackage method2!
 5 SamePackage method4!
 6 ================XX static void====================
 7 SamePackage method11!
 8 SamePackage method21!
 9 SamePackage method41!
10 ================XX static String public(protected(default))====================
11 SamePackage method411!
12 SamePackage method211!
13 SamePackage method111!
14 ================XX static String default(protected(public))====================
15 SamePackage method111!
16 SamePackage method211!
17 SamePackage method411!
 1 package com.package1;
 2 
 3 public class SamePackage {
 4     public void method1(){
 5         System.out.println("SamePackage method1!");
 6     }
 7     
 8     protected void method2(){
 9         System.out.println("SamePackage method2!");
10     }
11     
12     private static void method3(){
13         System.out.println("SamePackage method3!");
14     }
15     
16     void method4(){
17         System.out.println("SamePackage method4!");
18     }
19 
20     public static void method11(){
21         System.out.println("SamePackage method11!");
22     }
23     
24     protected static void method21(){
25         System.out.println("SamePackage method21!");
26     }
27     
28     private static void method31(){
29         System.out.println("SamePackage method31!");
30     }
31     
32     static void method41(){
33         System.out.println("SamePackage method41!");
34     }
35     
36     public static String method111(String str){
37         System.out.println("SamePackage method111!");
38         return str;
39     }
40     
41     protected static String method211(String str){
42         System.out.println("SamePackage method211!");
43         return str;
44     }
45     
46     private static String method311(String str){
47         System.out.println("SamePackage method311!");
48         return str;
49     }
50     
51     static String method411(String str){
52         System.out.println("SamePackage method411!");
53         return str;
54     }
55     
56     /**
57      * 程序执行入口和调用方法在同一个类中,任何权限的方法都可以都可相互调用
58      * @param args
59      */
60     public static void main(String[] args) {
61         SamePackage samePackage = new SamePackage();
62         System.out.println("================XX void====================");
63         samePackage.method1();
64         samePackage.method2();
65         samePackage.method3();
66         samePackage.method4();
67         System.out.println("================XX static void====================");
68         samePackage.method11();
69         samePackage.method21();
70         samePackage.method31();
71         samePackage.method41();
72         System.out.println("================XX static String default(private(protected(public)))====================");
73         samePackage.method411(samePackage.method311(samePackage.method211(samePackage.method111("wwwwwww"))));
74         System.out.println("================XX static String public(protected(private(default)))====================");
75         samePackage.method111(samePackage.method211(samePackage.method311(samePackage.method411("qqqqqqqqqq"))));
76     }
77 }
 1 执行结果:
 2 ================XX void====================
 3 SamePackage method1!
 4 SamePackage method2!
 5 SamePackage method3!
 6 SamePackage method4!
 7 ================XX static void====================
 8 SamePackage method11!
 9 SamePackage method21!
10 SamePackage method31!
11 SamePackage method41!
12 ================XX static String default(private(protected(public)))====================
13 SamePackage method111!
14 SamePackage method211!
15 SamePackage method311!
16 SamePackage method411!
17 ================XX static String public(protected(private(default)))====================
18 SamePackage method411!
19 SamePackage method311!
20 SamePackage method211!
21 SamePackage method111!
 1 package com.package2;
 2 
 3 import com.package1.SamePackage;
 4 
 5 /**
 6  * 程序执行入口和调用方法在不同包中,仅public权限的方法可以调用
 7  * @author Administrator
 8  *
 9  */
10 public class DifferentPackage {
11     public static void main(String[] args) {
12         SamePackage samePackage = new SamePackage();
13         System.out.println("================XX void====================");
14         samePackage.method1();
15         System.out.println("================XX static void====================");
16         samePackage.method11();
17     }
18 }
1 执行结果:
2 ================XX void====================
3 SamePackage method1!
4 ================XX static void====================
5 SamePackage method11!

 

转载于:https://www.cnblogs.com/celine/p/8997879.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/250342.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

洛谷P2822组合数问题

传送门啦 15分暴力&#xff0c;但看题解说暴力分有30分。 就是找到公式&#xff0c;然后套公式。。 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std;long long read(){char ch;bool f false;wh…

基于Docker的GoldenGate部署

前言Docker最近几年异常火爆&#xff0c;主要是因为其方便、快捷、轻量&#xff0c;相对于VM&#xff0c;它不需要占用太多资源&#xff0c;随时可以创建、删除&#xff0c;或在已有image上添加一些软件&#xff0c;再制作成另一个模板image供日后使用。Docker提供的Hub或priva…

javascript --- 防抖与节流

说明 源码 1. 防抖与节流 1.1 防抖 防抖: 触发事件后,在n秒内函数只执行一次 记忆: 你手比较抖,不小心按了按钮2下…你只希望它只执行一次.且按第二次结束时间算…这就用到了防抖技术 1.2 节流 节流: 连续发生的事件,在n秒内只执行一次函数 1.3 防抖与节流的区别 在一段…

bugku_本地包含

先上payload: 1、?hello);show_source(%27flag.php%27);// 2、?hello);include $_POST[zzz];// POST传参:zzzphp://filter/readconvert.base64-encode/resourceflag.php 3、?hellofile(%27flag.php%27) 4、?helloshow_source(flag.php) 首先我们来看源码&#xff1a; <?…

javascript --- js中的作用域 变量提升

1 求以下函数的输出 1.1 考察点: 变量提升、this、作用域 // 考察点 作用域、this、变量提升 var a 10 function test() {a 100console.log(a) console.log(this.a) var aconsole.log(a) } test()第一个和第三个肯定是100在node环境下,没有window的概念,因此输出的是 und…

洛谷1091合唱队形

题目描述 N位同学站成一排&#xff0c;音乐老师要请其中的(N−K)位同学出列&#xff0c;使得剩下的K位同学排成合唱队形。 合唱队形是指这样的一种队形&#xff1a;设K位同学从左到右依次编号为1,2,…,K&#xff0c;他们的身高分别为T1​,T2​,…,TK​&#xff0c; 则他们的身高…

poj3069 Saruman's Army(贪心)

https://vjudge.net/problem/POJ-3069 弄清楚一点&#xff0c;第一个stone的位置&#xff0c;考虑左右两边都要覆盖R&#xff0c;所以一般情况下不会在左边第一个&#xff08;除非前两个相距>R&#xff09;。 一开始二层循环外层写的i1&#xff0c;这样对于数据诸如1 1 1>…

Redis的key和value大小限制

Redis的key和value大小限制今天研究了下将java bean序列化到redis中存储起来&#xff0c;突然脑袋灵光一闪&#xff0c;对象大小会不会超过redis限制&#xff1f;不管怎么着&#xff0c;还是搞清楚一下比较好&#xff0c;所以就去问了下百度&#xff0c;果然没多少人关心这个问…

jquery --- 监听tab栏的变化

1. jQuery样式操作 1.1 操作css方法 参数只写属性名,则返回属性值(字符串) $(this).css(color)参数是 属性名、属性值(逗号分隔&#xff0c;则表示设置属性 $(this).css(color,red)参数可以是对象的形式 $(this).css({width: 400px,height: 400px })1.2 设置类样式方法 添…

bzoj 1645: [Usaco2007 Open]City Horizon 城市地平线【线段树+hash】

bzoj题面什么鬼啊…… 题目大意&#xff1a;有一个初始值均为0的数列&#xff0c;n次操作&#xff0c;每次将数列(ai,bi-1)这个区间中的数与ci取max&#xff0c;问n次后元素和 离散化&#xff0c;然后建立线段树&#xff0c;每次修改在区间上打max标记即可 #include<iostrea…

Redis单机和集群环境搭建

一、安装单机版redis 1、可以自己去官网下载&#xff0c;当然也可以用课程提供的压缩包 # yum install gcc # wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz # tar -xzvf tcl8.6.1-src.tar.gz # cd /usr/local/tcl8.6.1/unix/ # ./configure # make &…

yum离线安装

安装yum-plugin-downloadonly插件 yum install -y yum-plugin-downloadonly下载对应的软件包&#xff0c;我们以mysql为例&#xff0c;终端输入如下命令 yum install -y --downloadonly --downloaddir/soft/mysql mysql --downloaddir用来指定下载的路径转载于:https://www.cnb…

算法 --- 递归实现多级树展开结构

说明 先根据数据渲染,然后再实现事件 渲染 在项目中,经常会给出一个深度不确定的数组,数字结构如下: data [{name: a, child:[{name: a1},{name: a2, child: [{name:a21}]}]},{name: b} ]要求将数组渲染成对应的目录结构, 结构如下: <ul><li>a<ul><…

PYTHON自动化Day4-交换变量,字符串方法,拷贝,集合,文件,文件指针

一.判断 # 非空即真、非0即真 # 不为空的话就是true&#xff0c;是空的话就是false # 只要不是0就是true&#xff0c;是0就是false# 布尔类型 # True False name input(请输入你的名字&#xff1a;).strip() a [] #false d{} # false c 0 #false f tuple() #false e #fa…

Ajax-jsonp

一、什么是Jsonp jsonp(json with padding) 是一种“使用模式”&#xff0c;可以让网页从别的域名那获取资料&#xff0c;即跨域读取数据。 为什么会使用jsonp呢&#xff1f;因为同源策略&#xff08;数据来源一致&#xff09;&#xff0c;现在所有支持javascript 的浏览器都会…

javascript --- [读书笔记] 回流与重绘 前端优化小结

1. 浏览器渲染原理 请说出: 从用户在浏览器地址输入网址,到看整个页面,中间都发生了哪些事情? HTTP请求阶段HTTP响应阶段浏览器渲染阶段 1.1 可能用到的知识 1.1.1 进程 Process、线程 Thread、 栈内存 Stack 进程: 就是开的每一个程序: QQ、网易云音乐、Typora、VSCode……

ARP协议,以及ARP欺骗

1.定义&#xff1a; 地址解析协议&#xff0c;即ARP&#xff08;Address Resolution Protocol&#xff09;&#xff0c;是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机&#xff0c;并接收返回消息&#xff0c;以此…

css --- [小结]让盒子水平垂直居中的解决方案

描述 有如下模型,想办法让 <style>.box{width: 500px;height: 500px;background: skyblue;} </style> <div class"box"><div class"inner"></div> </div>想办法让inner在box中水平垂直居中 方案1: 使用绝对定位 让…

数组洗牌 Fisher Yates

看播放器代码时发现的这个洗牌算法&#xff0c;再网上查了一番 作用是把数组变成随机序列&#xff0c;原理类似于从牌堆A中随机抽牌放进牌堆B 代码1&#xff1a; 返回一个由&#xff08;数组下标&#xff09;组成的数组 function random(length) {function shuffle (arr) {for…

一个不错的MYSQL数据库备份类,PHP版,一个文件,精简版

1 <?php2 class DbManage {3 var $db; // 数据库连接4 var $database; // 所用数据库5 var $sqldir; // 数据库备份文件夹6 // 换行符7 private $ds "\n";8 // 存储SQL的变量9 public $sqlContent "";10 // 每条sql…