Java 四种访问权限

一、概述

访问等级比较:public > protected > default > private

无论是方法还是成员变量,这四种访问权限修饰符作用都一样

  • public:不管包外包内,所有类(子类+非子类)均可使用
  • protected
    • 包内:所有类可使用
    • 包外:子类可使用,非子类不可使用
  • default
    • 包内:所有类可使用
    • 包外:所有类不可使用
  • private:仅本类可使用

二、示例代码

Test包内的父类Permission

public class Permission {
private int privateValue = 1;
public int publicValue = 1;
protected int protectedValue = 1;
int defaultValue = 1; void defaultFunc(){
System.out.println("This is a default function");
} public void publicFunc(){
System.out.println("This is a public function");
} protected void protectedFunc() {
System.out.println("This is a protected function");
} private void privateFunc(){
System.out.println("This is a private function");
}
}

Test包内的子类SubPermission

public class SubPermission extends Permission{
public void permissionTest(){
// public, protected, default function and variable can be used
System.out.println("this is a default value:" + this.defaultValue);
System.out.println("this is a public value:" + this.publicValue);
System.out.println("this is a protected value:" + this.protectedValue); this.publicFunc();
this.protectedFunc();
this.defaultFunc();
}
}

Test包外的子类

import base.Test.Permission;

public class Demo extends Permission {
public static void main(String[] args) {
// if is not a subclass, only public function and variable can be used
Permission obj = new Permission();
obj.publicFunc();
System.out.println("this is a public value:" + obj.publicValue); // if is a subclass, public and protected function and variable can ba used
Demo demo = new Demo();
demo.publicFunc();
demo.protectedFunc();
System.out.println("this is a public value:" + demo.publicValue);
System.out.println("this is a protected value:" + demo.protectedValue);
}
}

Java四种访问修饰符的更多相关文章

  1. java四种访问修饰符及各自的权限

    1.public,即共有的,是访问权限限制最宽的修饰符.被public修饰的类.属性.及方法不仅可以跨类访问,而且可以跨包访问. 2. protected,即保护访问权限,是介于public和priv ...

  2. java中四种访问修饰符

    Java中的四种访问修饰符:public.protected.default(无修饰符,默认).private. 四种修饰符可修饰的成分(类.方法.成员变量)   public protected d ...

  3. Java 四种权限修饰符

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

  4. Java四种权限修饰符 在创建类中的使用

    四种权限修饰符 Java中有四种权限修饰符 public > protected > (default) >private 同一个类(我自己) YES YES YES YES同一个包 ...

  5. Java四种权限修饰符

    四种权限修饰符

  6. java四种权限修饰符(public > protected > (default) > private)

    权限修饰符在哪里可以访问 (default) : 表示什么权限修饰符都不写 位置 public protected (default) private 同一个类 yes yes yes yes 同一个 ...

  7. java中四种访问修饰符区别及详解全过程

    客户端程序员:即在其应用中使用数据类型的类消费者,他的目标是收集各种用来实现快速应用开发的类. 类创建者:即创建新数据类型的程序员,目标是构建类. 访问控制存在的原因:a.让客户端程序员无法触及他们不 ...

  8. java四种访问权限符

    (PS:其中private和protected不能修饰一般的类,否则编译就会报“modifier private not allowed here”,如果是内部类就另当别论了)

  9. Java中的四种权限修饰符及六种非访问修饰符(简识)

    一.是哪四种访问权限修饰符呢? public > protected > [default] > private (公共的 ) (受保护的) (默认的) (私有的) 二.简单认识四种 ...

随机推荐

  1. 数据库SQL---范式

    1.数据冗余导致的问题:冗余存储.更新异常.插入异常.删除异常. 2.函数依赖:一种完整性约束. 在关系模式r(R)中,α属于R,β属于R. 1)α函数确定β(β函数依赖于α):记作α→β,对于任意合 ...

  2. System.Linq.Dynamic字符串转委托

    以前一直想着有没有一个方法能够把字符串直接转化成函数的,刚好有需求就找了下,还真有. 微软地址:https://docs.microsoft.com/en-us/previous-versions/b ...

  3. Codeforces Round #639 (Div. 2)

    Codeforces Round #639 (Div. 2) (这场官方搞事,唉,just solve for fun...) A找规律 给定n*m个拼图块,每个拼图块三凸一凹,问能不能拼成 n * ...

  4. P1191 矩形

    ------------恢复内容开始------------ 题意 给出一个\(n*n\)的矩阵,矩阵中,有些格子被染成白色,有些格子被染成黑色,现要求矩阵中白色矩形的数量 分割线 Ⅰ.暴力出奇迹!! ...

  5. [C#]基础——注意事项

    1. 静态类必须直接继承Object 2. 静态类不能实现接口,不能继承其他类(除了Object) 3.静态类中不能有实体方法 4.实体类中可以有静态方法,使用同 静态类 5.readonly属性可以 ...

  6. 【Kafka】JavaAPI操作

    目录 先创建Maven工程导入jar包 Producer API Consumer API Stream API 先创建Maven工程导入jar包 帮助文档地址:http://kafka.apache ...

  7. 第三家面试过程,及导出elcel的进一步小结。(8月11号 周五)

    今天收到第三家公司的面试通知,面试地址也在民治附近,面试时间是上午十点.今早又失眠了,感觉到这边这么几天,总是天天失眠,晚上睡不好白天瞌睡睡不着,估计还需要些许时间的适应,早上七点多我整理好面试需要准 ...

  8. IDEA打包JavaWeb项目

    IDEA打包JavaWeb项目 步骤: 1.配置项目->2.Build Artifacts->3.找到.war文件 具体操作: 首先,单击顶部工具栏的“File”选项,在弹出选项中选择“P ...

  9. docker虚拟化平台构建

    docker虚拟化平台构建 从1.13版本以后的docker软件分为连个版本:企业版.社区版,在企业中推荐社区版本. 构建docker平台环境,系统选择centos7.x,推荐linux内核3.10 ...

  10. 生产者消费者问题中的同步机制JAVA设计和实现

    目录 问题描述 问题分析 利用记录型信号量解决 运行环境 实现思路 代码实现 运行截图 过程中出现的问题和注意点 利用AND信号集解决 运行环境 实现思路 代码实现 运行截图 问题描述 若干进程通过有 ...