JAVA基础知识学习笔记——权限修饰符

概述

在Java中提供了四种访问权限,使用不同的访问权限修饰符修饰时,被修饰的内容会有不同的访问权限,

  • public:公共的。
  • protected:受保护的
  • default:默认的
  • private:私有的
    可见,public具有最大权限。private则是最小权限。

编写代码时,如果没有特殊的考虑,建议这样使用权限:

  • 成员变量使用private ,隐藏细节。
  • 构造方法使用public ,方便创建对象。
  • 成员方法使用public ,方便调用方法。
publicprotecteddefault(空的)private
同一类中
同一包中(子类与无关类)
不同包的子类
不同包中的无关类
代码(根据具体情况创建):
package com.shiyitiancheng.demo1;

/*
    四大权限修饰符
        public:公共的
        protected:受保护的
        不写:默认的
        private:私有的
    编写代码时,如果没有特殊的考虑,建议这样使用权限:
        - 成员变量使用private ,隐藏细节。
        - 构造方法使用public ,方便创建对象。
        - 成员方法使用public ,方便调用方法。
 */
public class Person {
    //定义public修饰符修饰的变量
    public int a =10;
    //定义protected修饰符修饰的变量
    protected int b = 20;
    //定义默认修饰符修饰的变量
    int c = 30;
    //定义private修饰符修饰的变量
    private int d = 40;

    //定义一个方法
    public void show(){
        //同一个类中4种权限修饰符修饰的变量和方法都可以使用
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
        System.out.println(d);
    }
}
package com.shiyitiancheng.demo01;

/*
    Demo01Person和Person同一个包中的类
 */
public class Demo01Person {
    public static void main(String[] args) {
        //创建Person对象
        Person p = new Person();
        p.show();
        //同一个包中的无关(不同)类
        System.out.println(p.a);//可以使用public修饰的变量
        System.out.println(p.b);//可以使用protected修饰的变量
        System.out.println(p.c);//可以使用默认权限修饰的变量
        //'d' has private access in 'com.shiyitiancheng.demo01.Person'
        //System.out.println(p.d);//不能使用private修饰的变量
    }
}
package com.itheima.demo02;

import com.itheima.demo01.Person;

//Student是Person不同包的子类
public class Student extends Person{
    public void method(){
        System.out.println(a);//可以使用public修饰的变量
        System.out.println(b);//可以使用protected修饰的变量
        //'c' is not public in 'com.shiyitiancheng.demo01.Person'. Cannot be accessed from outside package
        //System.out.println(c);//不能使用默认权限修饰的变量
        //'d' has private access in 'com.shiyitiancheng.demo01.Person'
        //System.out.println(d);//不能使用private修饰的变量
    }
}
package com.shiyitiancheng.demo02;

/*
    Demo01Student和Person类:不同包的,无关的类
 */
public class Demo01Student {
    public static void main(String[] args) {
        Student s = new Student();
        s.method();

        System.out.println(s.a);//可以使用public修饰的变量
        //System.out.println(s.b);//'b' has protected access in 'com.shiyitiancheng.demo01.Person'
        //System.out.println(s.c);//'c' is not public in 'com.shiyitiancheng.demo01.Person'. Cannot be accessed from outside package
        //System.out.println(s.d);//'d' has private access in 'com.shiyitiancheng.demo01.Person'
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
cda备考学习学习笔记——基础知识篇(二)主要涉及了计算机科学与技术领域的基本概念和知识。 首先,它介绍了计算机网络的基础知识。网络是将多台计算机通过通信链路连接起来,使它们能够相互通信和共享资源的系统。笔记中详细介绍了网络的组成、拓扑结构和通信协议等重要内容。 其次,笔记还解释了计算机系统的基本组成。计算机系统由硬件和软件两部分组成,其中硬件包括中央处理器、存储器、输入输出设备等,而软件则分为系统软件和应用软件。笔记详细介绍了各种硬件和软件的功能和作用。 此外,笔记还对数据库管理系统进行了介绍。数据库管理系统是一种用于管理和组织数据的软件系统,它能够实现数据的存储、检索和更新等操作。笔记中详细介绍了数据库的概念、结构和操作等内容。 最后,笔记还包括了算法和数据结构的基础知识。算法是解决问题的一系列步骤和规则,而数据结构则是组织和存储数据的方式。笔记中介绍了常用的算法和数据结构,如排序算法、树和图等。 总之,通过学习CDA备考学习笔记中的基础知识篇(二),我们能够更好地理解计算机网络、计算机系统、数据库管理系统以及算法和数据结构等相关概念和知识。这些基础知识对于我们深入研究计算机科学与技术领域是非常重要的,也为我们日后的学习和工作奠定了坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值