JAVA(2)之关于类的访问权限控制
- 类的成员的四种访问权限
- private
- 只能在当前类中访问
- 无修饰
- 同一个包中的类都可以访问
- protected
- 同一个包中的类可以访问
- 不同包中的子类可以访问
- public
- 所有类都可以访问
- private
- 示例代码
- 同包
-
package com.study.main;
//同包非子类 public class Two
{
private int a;
protected int b;
public int c;
int d;
} -
package com.study.main;
//同包子类
public class Son extends Main
{ } package com.study.main;
//测试类
import com.study.one.One;
import com.study.one.SonOne; public class Main
{
private int a;
protected int b;
public int c;
int d; public static void main(String[] args)
{
Main m = new Main();//同一类
System.out.println("同一类");
System.out.println(m.a);//private
System.out.println(m.b);//protected
System.out.println(m.c);//public
System.out.println(m.d);//无修饰 Son s = new Son();//同一包中的子类
System.out.println("同一包中的子类");
// System.out.println(s.a);//private无法访问
System.out.println(s.b);//protected
System.out.println(s.c);//public
System.out.println(s.d);//无修饰 Two t = new Two();//同一包中的非子类
System.out.println("同一包中的非子类");
// System.out.println(t.a);//private无法访问
System.out.println(t.b);//protected
System.out.println(t.c);//public
System.out.println(t.d);//无修饰 SonOne so = new SonOne();//不同包中的子类
System.out.println("不同包中的子类");
// System.out.println(so.a);//private无法访问
System.out.println(so.b);//protected
System.out.println(so.c);//public
// System.out.println(so.d);//无修饰无法访问 One o = new One();//不同包中的非子类
System.out.println("不同包中的非子类");
// System.out.println(o.a);//private无法访问
// System.out.println(o.b);//protected无法访问
System.out.println(o.c);//public
// System.out.println(o.d);//无修饰无法访问 }
}
-
- 不同包
-
package com.study.one;
//不同包非子类
public class One
{
private int a;
protected int b;
public int c;
int d;
} package com.study.one;
//不同包子类
import com.study.main.Main; public class SonOne extends Main
{ }
-
- 运行截图
- 同包
- 总结
- 当前类的都可以访问
- 同一个包中的类除了private不能访问
- 不同包中的子类只有public和protected可以访问
- 不同包中的非子类只有public可以访问
JAVA(2)之关于类的访问权限控制的更多相关文章
- Java之路(五) 访问权限控制
在Java中,所有事物都具有某种形式的访问权限控制. 访问权限的控制等级从最大到最小依次为:public,protected,包访问权限(无关键词)和private. public,protected ...
- java基础-类成员访问权限控制
一 前言 这篇文章是很基础的一文,没多大深度,对于开发人员必然是熟练于心.本篇文章的主题是为什么java要设置类成员访问级别?其原因也很简单,就是为了面向对象的封装特性:将类成员使用不同的访问级别控制 ...
- Java继承多态中的方法访问权限控制
java中的方法天生具有继承多态特性,这点与C++有很大不同(需要在父类方发上加virtual关键字),但用起来确实方便了许多. 最简单的继承多态 声明一个接口BaseIF,只包含一个方法声明 pub ...
- Java成员的访问权限控制
Java中的访问权限控制包含两个部分: 类的访问权限控制 类成员的访问权限控制 对类来说,访问权限控制修饰符可以是public或者无修饰符(默认的包访问权限): 对于类成员来说,访问权限控制修饰符可以 ...
- Java基础详解 (一)Java的类成员访问权限修饰词(以及类访问权限)
在一个类的内部,其成员(包括成员变量和成员函数)能否被其他类所访问,取决于该成员的修饰词.Java的类成员访问权限修饰词有四类:private,无(默认情况下),protected和public.其权 ...
- java类的访问权限
1.解析 Java有四种访问权限, 其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符. private: Java语言中对访问权限限制的最窄的修 ...
- Java编程思想学习笔记——类的访问权限
类的访问权限 Java中,访问权限修饰词用于确定库中哪些类对于该库的使用者是可用的. public class Foo{ } 注意点: 每个文件(编译单元)只能有一个public类. public类的 ...
- (转)浅析Java中的访问权限控制
原文地址: http://www.cnblogs.com/dolphin0520/p/3734915.html 今天我们来一起了解一下Java语言中的访问权限控制.在讨论访问权限控制之前,先来讨论一下 ...
- [THINKING IN JAVA]访问权限控制
6 访问权限控制 6.1 包:库单元 package.import.import *.import static: 修改classpath环境变量可以将自己写的类库添加至环境变量并在任何java程序中 ...
随机推荐
- 一点点学习PS--实战四
本节实战,较为基础,主要是设置画布大小.字体的输入 1.工具使用 文字工具:直排文字工具,竖排文字 2.重点: (1)画影子: ----人物图层拷贝,CTRL+T,右键选择垂直翻转,拖拽出来,即可得到 ...
- SVN merge(合并) 时看不到以前的已经合并过的记录的标识
今天遇到这么一个事情,merge的时候以前merge过的提交记录,咩有已合并过的标识了,就是下面这样的尾巴分叉向下的箭头 通常出现这样的情况,都是工程路径不对,检查了一下,没有问题,这些meng B ...
- 组合数取mod
组合数取mod 条件mod是质数,inv 是逆元,fac是阶层: 用于n在10^5左右 maxn=100505: ll fact[maxn],inv[maxn]; ll Pow(ll x,ll n){ ...
- Centos7 安装VNC实现远程桌面
1.设置root用户方法: 1.# 复制一个服务设置的模板,命令如下: cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vn ...
- [一本通学习笔记] KMP算法
KMP算法 对于串s[1..n],我们定义fail[i]表示以串s[1..i]的最长公共真前后缀. 我们首先考虑对于模式串p,如何计算出它的fail数组.定义fail[0]=-1. 根据“真前后缀”的 ...
- c#字符串常用方法
一.字符串常用方法 1.IndexOf("") 如果找到字符串出现的位置则为索引位置,否则返回-1,索引从0开始 2.string Substring( int sta ...
- MySQL认知
MySQL 认识MySQL MySQL是什么? MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management S ...
- js -- 正则表达式集合
在做项目中,有时需要进行正则验证,但我又不太会正则表达式. 在一次又一次的寻找正则表达式的过程中,我最后总结了一个用于验证的函数,把我们常用的正则写在方法里,就不用每次都去网上找了. 可以根据需求进行 ...
- util之ArrayList
Java之ArrayList 方法: add(o: E): void 在list的末尾添加一个元素o add(index: int, o: E): void 在指定的index处插入元素o clear ...
- kuangbin专题 专题九 连通图 HDU 4738 Caocao's Bridges
题目链接:https://vjudge.net/problem/HDU-4738 题目:tarjan求桥,坑点: 题目说是分岛任务...如果所有岛之间没有完全连通,就不需要执行任务了...答案直接是0 ...