访问修饰符

news2024/11/13 8:04:07

1.java提供四种访问控制修饰符号,用于控制方法和属性(成员变量)的访问权限(范围)。

1.公开级别:用public修饰,对外公开

2.受保护级别:用protected修饰,对子类同一个包中的类公开

3.默认级别:没用修饰符,向同一个包的类公开

4.私有级别:用private修饰,只有本类可以访问,不对外公开。

2.4种访问修饰符的访问范围

3.同一个类中可以访问public,protected,默认,私有的属性和方法

package com.hspedu.modifier;

public class A {
    //    四个属性
    public int n1 = 100;
    protected int n2 = 200;
    int n3 = 300;
    private int n4 = 400;

    public void m1() {
        System.out.println("n1=" + n1 + "n2=" + n2 + "n3=" + n3 + "n4=" + n4);
    }
}

        

4. 在一个包下,可以访问public,protected和默认 不能访问私有的

package com.hspedu.modifier;

public class B {
    public void say() {
        A a = new A();
//        在一个包下,可以访问public,protected和默认 不能访问私有的
        System.out.println("n1=" + a.n1 + "n2" + a.n2 + "n3" + a.n3);
    }
}

5. 在不同的包下可以访问public修饰的属性和方法
但是不能访问protected,默认,private修饰的属性和方法

package com.hspedu.pkg;

import com.hspedu.modifier.A;

//不同包下的类
public class Test {
    public static void main(String[] args) {
        A a = new A();
//        在不同的包下可以访问public修饰的属性和方法
//        但是不能访问protected,默认,private修饰的属性和方法
        System.out.println(a.n1);

    }
}

6.文件的架的结构

modifier A:

package com.hspedu.modifier;

public class A {
    //    四个属性
    public int n1 = 100;
    protected int n2 = 200;
    int n3 = 300;
    private int n4 = 400;

    public void m1() {
        System.out.println("n1=" + n1 + "n2=" + n2 + "n3=" + n3 + "n4=" + n4);
    }
}

B:

    package com.hspedu.modifier;

    public class B {
        public void say() {
            A a = new A();
    //        在一个包下,可以访问public,protected和默认 不能访问私有的
            System.out.println("n1=" + a.n1 + "n2" + a.n2 + "n3" + a.n3);
        }
    }

Test:

package com.hspedu.modifier;

public class Test {
    public static void main(String[] args) {
        A a = new A();
        a.m1();
        B b = new B();
        b.say();
    }
}

pkg-Test:

package com.hspedu.pkg;

import com.hspedu.modifier.A;

//不同包下的类
public class Test {
    public static void main(String[] args) {
        A a = new A();
//        在不同的包下可以访问public修饰的属性和方法
//        但是不能访问protected,默认,private修饰的属性和方法
        System.out.println(a.n1);

    }
}

7.注意事项

1.修饰符可以用来修饰类中的属性,成员方法以及类

2.只有默认和public才能修饰类,并且遵循上述访问权限的特点

2.同一个类中四种都能访问

3.同一个包中不用类中public,protected和默认 不能访问私有的

4.不同包中只能访问public修饰的属性和方法

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

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

相关文章

智能优化算法应用:基于模拟退火算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于模拟退火算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于模拟退火算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.模拟退火算法4.实验参数设定5.算法结果6.…

如何处理好面试中的“压力测试”?

作为一名求职者,在面试时有时遇到的是压力测试,有时则遇到的是一些无良企业单位,究竟如何把握忍耐的限度,才合格当一个能经受压力的员工,才能避免对无良单位的一味隐忍! 压力面试是指有意制造紧张,以了解求…

VR播控系统深耕VR教学领域,助力开启未来新课堂

作为提升教育质量的技术之一,VR技术已经逐渐成为培养新一代人才、提升教学质量的重要方式,相比于传统教育,VR技术在教学方面的应用,所带来的变化和效果提升都是非常明显的,尤其是VR播控系统的上线,作为VR教…

MATLAB图解傅里叶变换(初学者也可以理解)

1、概述 相信很多人对于傅里叶变换可能觉得比较复杂和有点难懂,其实不难,它只是一种积分变换。 傅里叶变换,表示能将满足一定条件的某个函数表示成三角函数(正弦和/或余弦函数)或者它们的积分的线性组合。也就是说&qu…

gRPC框架

1、gRPC 与 Protobuf 介绍 微服务架构中,由于每个服务对应的代码库是独立运行的,无法直接调用,彼此间 的通信就是个大问题gRPC 可以实现微服务, 将大的项目拆分为多个小且独立的业务模块, 也就是服务, 各服…

DSP280049C初学(4)-FLASH烧录以及部分程序转移至RAM运行

DSP280049C初学(4)-FLASH烧录以及部分程序转移至RAM运行 实现目的:代码在RAM中调试完成后,就需要将其固化下载到FLASH中,但是FLASH中运行所有程序的话会存在计算或程序运行时间过长的问题,故还需要将部分代…

【C语言初阶】什么操作符你还没搞懂?试试这篇文章让你彻底理解各种操作符!

🎬 鸽芷咕:个人主页 🔥 个人专栏:《C语言初阶篇》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 文章目录 一、 算术操作符:1.1 加减乘除 二、 移位操作符:2.1 计算机中整数的存储2.2 >> 右…

arp欺骗原理以及实现方式

我们知道了arp的作用,那么此时我们怎么可以用他来进行攻击呢?在一个局域网中,我们怎么实现呢? 原理: 这样B就可以做到中间人了,可以接受到两个主机的数据了。换句话来说,在同一个局域网内&…

JVM 详解(JVM组成部分、双亲委派机制、垃圾回收算法、回收器、回收类型、了解调优思路)

目录 JVM 详解(JVM组成部分、双亲委派机制、垃圾回收算法、回收器、回收类型、了解调优思路)1、概念:什么是 JVM ?JVM 的作用? 2、JVM 的主要组成部分?类加载器(Class Loader):简单…

坚鹏:美国智库认为中国在70%战略产业里领先,美国正迅速衰落

【重榜】2023年12月13日,美国智库信息技术与创新基金会(ITIF)发布重榜报告,认为中国在70%战略产业里领先,美国正迅速衰落。美国智库ITIF认为在计算机和电子产品、化工品、机器设备、机动车、基本金属、金属制品、电气设…

linux 网络子系统 摘要

当你输入一个网址并按下回车键的时候,首先,应用层协议对该请求包做了格式定义;紧接着传输层协议加上了双方的端口号,确认了双方通信的应用程序;然后网络协议加上了双方的IP地址,确认了双方的网络位置;最后链路层协议加上了双方的M…

精细化工ERP系统是什么?精细化工ERP软件包含哪些模块

化工是比较特殊的行业,日常的生产经营活动比较繁杂,传统的手工管理模式逐渐不能满足现代化工管理需求。进入信息化时代,如何顺应现代化工市场发展,是摆在很多化工企业面前的难题。 随着行业竞争愈加激烈,各种成本的上…

Word写大论文常见问题(持续更新)

脚注横线未定格 解决方案:“视图”-“草图”,“引用”-“显示备注”-选择“脚注分隔符”,把横线前的空格删掉。

基于Java SSM框架实现抗疫医疗用品销售系统项目【项目源码+论文说明】

基于java的SSM框架实现抗疫医疗用品销售系统演示 摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,抗疫医疗用品销售平台当然也不能排除在外。抗疫医疗用品销售平台是以实…

亿欧网首届“元创·灵镜”科技艺术节精彩纷呈,实在智能AI Agent智能体展现硬核科技图景

12月4日-10日,持续一周的首届“元创灵镜”科技艺术节在海南陵水香水湾拉开帷幕,虚实交互创造出的“海岛之镜”开幕式呈现出既真实又虚幻的未来感,融入前沿科技元素的艺术装置作品在“虚实之镜&自然生长”科技艺术展诠释着浪漫想象&#x…

爬虫chrome浏览器抓包说明

chrome浏览器抓包说明 目标:掌握chrome在爬虫中的使用 1. 新建隐身窗口(无痕窗口) 作用:在打开无痕窗口的时候,第一次请求某个网站是没有携带cookie的,和代码请求一个网站一样,这样就能够尽可…

jpa 修改信息拦截

实现目标springbootJPA 哪个人,修改了哪个表的哪个字段,从什么值修改成什么值 Component // 必须加 Slf4j Configurable(autowire Autowire.BY_TYPE) public class AuditingEntityListener {// 线程变量,保存修改前的 objectprivate Thre…

PyVMomi 克隆虚拟机时将磁盘改为Thin模式

需求介绍: 之前已经使用pyvmomi库实现了虚拟机的自动备份,不过由于备份的虚拟机都是较为重要的系统,磁盘都是厚置备模式,终于有一天,备份目标的空间不够了,导致几个虚拟机无法备份。在不想增加磁盘的情况下…

Linux16 ftp文件服务区、vsftpd文件系统服务安装、lftp客户端安装、NFS远程共享存储

目录 一、FTP基础ftp主动模式ftp被动模式 二、vsftpd配置共享目录编辑配置文件使用windows 访问 三、客户端安装 (lftp)匿名用户的一些操作(lftp {ip})ftp配置本地用户登录配置本地用户ftp配置文件 lftp操作 NFS远程共享存储安装n…