Java(一)权限修饰符

ACS驱动器直线电机回零程序与误差补偿Buffer实战解析 本文深入解析了ACS驱动器控制直线电机时,实现高精度回零与误差补偿的完整实战流程。核心在于利用驱动器的D-Buffer功能,将激光干涉仪测量的误差数据导入补偿数组,通过ERRORMAP1D指令进行映射,从而实时修正定位误差,显著提升设备重复定位精度。文章详细拆解了回零程序逻辑、补偿参数设置及关键调试避坑指南。 阅读详情
老忘记的一些理论知识,发现这篇文章比较详细,先保存下来,以后还会完善。
--------------------------------------------------------------------------------------------------------
允许所有外部类访问使用public

允许子类和同包类访问使用protected

只能自己访问使用private

访问权限修饰符权限从高到低排列是public  ,protected  ,friendly, private。



一个Java应用有很多类,但是有些类,并不希望被其他类使用。每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用。如何能做到访问控制呢?就需要使用访问权限修饰符。

Java语言中的访问权限修饰符有4种,但是仅有3个关键字,因为不写访问权限,在Java中被称为默认权限,或同包权限,本文中以(default)代替。下面按照权限从小到大的顺序对4中访问权限分别介绍。

1.私有权限(private)

private可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部类)。

被private修饰的成员,只能在定义它们的类中使用,在其他类中不能调用。

2.默认权限(default)

类,数据成员,构造方法,方法成员,都能够使用默认权限,即不写任何关键字。

默认权限即同包权限,同包权限的元素只能在定义它们的类中,以及同包的类中被调用。

3.受保护权限(protected)

protected可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部类)。

被protected修饰的成员,能在定义它们的类中,同包的类中被调用。如果有不同包的类想调用它们,那么这个类必须是定义它们的类的子类。

4.公共权限(public)

public可以修饰类,数据成员,构造方法,方法成员。被public修饰的成员,可以在任何一个类中被调用,不管同包或不同包,是权限最大的一个修饰符。

 

有关Java语言的修饰符,需要注意的问题有如下几个:

1.并不是每个修饰符都可以修饰类(指外部类),只有public和default可以。

2.所有修饰符都可以修饰数据成员,方法成员,构造方法。

3.为了代码安全起见,修饰符不要尽量使用权限大的,而是适用即可。比如,数据成员,如果没有特殊需要,尽可能用private。

4.修饰符修饰的是“被访问”的权限。

 

 

--------------------------------------------------------------------------------------------------------

类、方法、成员变量和局部变量的可用修饰符

 

修饰符

类

成员访求

构造方法

成员变量

局部变量

abstract (抽象的)

√

√

√

-

-

static (静态的)

-

√

-

√

-

public (公共的)

√

√

√

√

-

protected (受保护的)

 

√

√

√

-

private (私有的)

-

√

√

√

-

synchronized (同步的)

-

√

-

-

-

native (本地的)

-

√

-

-

-

transient (暂时的)

-

-

-

√

-

volatie (易失的)

-

-

-

√

-

final (不要改变的)

√

√

-

√

√

--------------------------------------------------------------------------------------------------------
<div style="background-color: rgb(255, 255, 255);"> <span style="white-space:pre">	</span><strong>Java抽象类 </strong></div><div><strong></strong><div><span style="background-color: rgb(255, 255, 153);">Java抽象类的构造方法和普通类的构造方法一样

都是用来初始化类

只是抽象类的构造方法不能直接调用 因为抽象类不能实现实例

但是一旦一个普通类继承了抽象类 便也可以在构造函数中调用其抽象类的构造函数

也可以使用其方法

可以这么理解吧 抽象类就是一个不能实例化的类

不过如果方法加了abstract那么就必须在子类里面重写了</span><span style="background-color: rgb(255, 255, 255);">
</span></div><span style="background-color: rgb(255, 255, 255);">
</span></div><span style="background-color: rgb(255, 255, 255);">
</span>

--------------------------------------------------------------------------------------------------------

类 的修饰符整合

一.类

类的修饰符:

Public : 可以在其他任何类中使用,默认为统一包下的任意类。

Abstract: 抽象类 ,不能被实例化,可以包含抽象方法,抽象方法没有被实现,无具体功能,只能衍生子类。

Final : 不能被继承。

二.变量

变量修饰符:

一个类的成员变量的声明必须在类体中,而不能在方法中,方法中声明的是局部变量 。

1.       可访问修饰符:

2.       static :类变量 :一个类所拥有的变量,不是类的每个实例有的变量。类变量是指不管类创建了多少对象,系统仅在第一次调用类的时候为类变量分配内存,所有对象共享该类的类变量,因此可以通过类本身或者某个对象来访问类变量。

3.       final :常量 。

4.       volatile :声明一个可能同时被并存运行的几个线程所控制和修改的变量。

实例变量 :和类变量对应,即每个对象都拥有各自独立的实例变量。

三.方法: (和变量对象分为实例方法和类方法,并用有无static 修饰区别)

类方法 :使用static 关键字说明的方法

1. 第一次调用含类方法的类是,系统只为该类创建一个版本,这个版本被该类和该类的所有实例共享。

2. 类方法只能操作类变量,不能访问实例变量。类方法可以在类中被调用,不必创建实例来调用,当然也可以通过对象来调用。

实例方法 :实例方法可以对当前对象的实例变量操作,而且可以访问类变量。

方法可以重载 ,要求:方法名相同,但是参数必须有区别。(参数不同可以使类型不同,顺序不同,个数不同)

方法的返回类型:若无返回类型,则声明为void.

方法中的变量作用域:

1.       成员变量:整个类。

2.       局部变量:定义起到方法块结束为止。

3.       方法参数:整个方法或者构造方法。

4.       异常处理参数:参数传递给异常处理方法。

构造方法 :和类同名的方法。为新建对象开辟内存空间后,用于初始化新建的对象。不能用对象显式的调用。

静态初始化器 :格式:static{< 赋值语句组>}

静态初始化器与构造方法的区别: 

 

静态初始化器

构造方法

对类的静态域初始化

对新建的对象初始化

类进入内存后,系统调用执行

执行new 后自动执行

属特殊语句(仅执行一次)

属特殊方法

 

方法的修饰符:

抽象方法: 用abstract 修饰,只有声明部分,方法体为空,具体在子类中完成。

类方法: 静态方法,用static 修饰,

1.       调用时,使用类名作为前缀,而不是类的某个实例对象名

2.       不能被单独对象拥有,属于整个类共享。

3.       不能处理成员变量。

最终方法 :用final 修饰,不能被子类重新定义的方法。

本地方法 :用native 修饰的方法,表示用其他语言书写的特殊方法,包括C ,C++ ,FORTRAN ,汇编语言等。

四.类成员的访问控制符 :

即类的方法和成员变量的访问控制符,一个类作为整体对象不可见,并不代表他的所有域和方法也对程序其他部分不可见,需要有他们的访问修饰符判断。

权限如下: 

 

访问修饰符

同一个类

同包

不同包,子类

不同包,非子类

private

√

 

 

 

protected

√

√

√

 

public

√

√

√

√

默认

√

√

 

 

 


(十分感谢)转自:http://blog.youkuaiyun.com/yan8024/article/details/6426451

华为云Stack交付实战:从工勘到上线的全流程拆解 本文详细拆解华为云Stack交付全流程,从项目启动、工勘、LLD设计到硬件部署和软件安装,提供实战技巧与避坑指南。重点解析华为云Stack交付流程中的关键环节,如标准化工具使用、规范化文档管理和流程化协作,帮助团队高效完成从工勘到上线的复杂项目交付。 阅读详情

相关推荐

从零部署奥比中光Gemini335L:Python SDK编译与手眼标定环境实战

本文提供了一份从零部署奥比中光Gemini 335L深度相机的完整实战指南。详细介绍了驱动安装、Python SDK编译、CMake配置及虚拟环境搭建等关键步骤,并重点解析了如何通过编译生成Python模块,最终实现深度图与点云数据获取,为后续的机械臂手眼标定工作奠定坚实基础。

weixin_29031161的博客 399

Java 访问权限控制

Java具有三种访问权限修饰词(public private protected),划分出了四种访问权限(public protected default private)。:该成员可以被该类内部成员访问,也可以被同一包下其他的类访问,还可以被它的子类访问;:该成员可以被该类内部成员访问,也可以被同一包下其他的类访问;:该成员可以被任意包下,任意类的成员进行访问。:该成员可以被该类内部成员访问;

LRC1062702315的博客 2462

华中科技大学 计算机组成原理 educoder Logisim平台 计算机数据表示实验

本文主要是对 计算机数据表示实验的笔记和相关Logisim平台的图,供大家学习交流使用。 需要源文件或者源代码,可以留言评论! 目录实验目的第1关:汉字国标码转区位码实验第2关:汉字机内码获取实验第3关:偶校验编码设计第4关:偶校验解码电路设计第5关:16位海明编码电路设计第6关:16位海明解码电路设计第7关:海明编码流水传输实验第8关:16位CRC并行编解码电路设计第9关:CRC编码流水传输实验实验结果: 实验目的 本实训将帮助同学们巩固对计算机中数据表示方法的理解,要求能设计汉字国标码与区位码之间的转换

weixin_48383580的博客 2万+

Java中的访问控制详解

Java中的访问控制详解大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在Java编程中,访问控制是一个非常重要的概念,它帮助我们管理类和类成员的可见性和访问权限。本文将详细介绍Java中的访问控制,包括访问修饰符及其作用,实例代码示例等。1. Java中的访问修饰符Java提供了四种主要的访...

weixin_41470330的博客 530

数字IC后端设计实战:从floorplan到powerplan的优化策略

本文深入探讨了数字IC后端设计中从Floorplan到Powerplan的核心优化策略。文章强调了Floorplan作为布局基础的重要性,并详细解析了Powerplan规划,特别是针对低功耗设计中MTCMOS的应用与IR Drop分析。通过实战经验分享,提供了从模块摆放到电源网络构建、再到IR Drop问题层层递进的解决方案,旨在帮助后端工程师构建稳健高效的芯片物理设计。

weixin_28338005的博客 352

手把手教你用DCA1000和mmWave Studio 2.0采集AWR1843雷达数据(附驱动安装与常见报错排查)

本文详细介绍了使用DCA1000和mmWave Studio 2.0采集AWR1843毫米波雷达数据的全流程指南,包括硬件连接、驱动安装、软件配置及常见报错排查。通过实战经验分享,帮助开发者快速掌握数据采集技巧,优化雷达参数配置,提升数据质量与采集效率。

weixin_30070339的博客 335

Java 四种访问控制权限

我们在pk2包中创建一个Child2类,继承自Father类,创建一个Father的对象,访问其属性发现只能访问到param3,也就是public类型的,而其他类型的都不能访问。而在Stranger类中却不能通过child2访问该属性,并且通过Child2类的例子,可以看出,child2对象也不能访问到Father类的default属性,说明。那么我创建一个Child2类的对象,通过子类访问父类属性,看看如何,发现它可以访问param2,和param3,也就是protected和public类型。

u013302168的博客 698

Python爬虫实战:避开巨潮资讯网反爬,稳定获取上市公司年报PDF下载地址

本文详细介绍了如何使用Python和Selenium突破巨潮资讯网的动态加载限制,稳定获取上市公司年报PDF下载地址。通过模拟真实用户操作、智能等待策略和反反爬虫技巧,帮助开发者高效爬取财经数据,适用于股票代码查询和年报分析等场景。

weixin_29065659的博客 1668

Java 的访问控制符

Java 的访问控制符 ​ Java 提供了三个访问控制符:private、protected 和 public ,另外还有一个不加任何访问控制符的访问控制级别。 其四种访问级别关系由小到大为 private->default->protected->public private 访问控制级别:如果一个成员使用该控制符来修饰,则这个成员只能在该类的内部被访问。通常用于修饰属性,使用 private 来修饰属性可以把属性隐藏在类的内部。 default 访问控制级别(包访问权限):若一个成

qq_54522796的博客 2366

AI漫剧全套万能提示词合集

今天给大家整理一套已经跑通爆款漫剧的万能提示词库!覆盖:豆包剧本人设词 + 分镜生成词 + 即梦绘图词 + 动态优化词 + 防翻车固定词直接复制粘贴,新手也能做出稳定、高清、统一、有质感的AI漫剧!你是资深短视频漫剧编剧,擅长制作60秒竖屏爆款AI漫剧,请为我创作一集完整漫剧内容。要求:开头3秒高能抓眼,中段有冲突转折,结尾留强悬念钩子,节奏紧凑、适合短视频流量。首先生成固定统一人物人设:包含脸型、五官、发色、发型、穿搭、身材、气质、画风、光影细节,要求足够精细,保证全程角色不变脸。

欢迎来到鸾姝淡月博客,专为程序员和编程爱好者打造的技术博客。我们分享编程语言趋势、开发工具、编程哲学、职业发展等,助你掌握新技术,优化技能,激发编程热情。 1933

基于STM32的汽车主门电动窗开关系统设计方案

以下是基于 STM32CubeMX 和 HAL 库的示例代码,可实现基本的功能。

weixin_42300449的博客 996

Java中的访问控制

Java中提供了四种访问控制修饰符,用于控制类、方法和变量的访问权限。public:公共访问权限。被public修饰的类、方法和变量可以被任何其他类访问。换句话说,无论在同一个包中还是不同包中,public成员都可以自由访问。protected:受保护访问权限。protected成员可以在同一个包中的类,以及不同包中的子类中访问。这种修饰符在实现继承和多态时非常有用。default:包访问权限。如果未显式声明访问修饰符,则默认为包访问权限。包访问权限的成员只能在同一个包中的类中访问。private。

weixin_46372265的博客 1211

但是我如果真的用差速轮去控制转向 为了尽量原地旋转 转向角度精确 我应该怎么去配置左右两个轮子的速度呢

目标实现方式原地转向左右轮速度相等、方向相反精确角度用 IMU 检测 yaw 实时对齐停止判断达到目标 yaw ± 容差时立即停转控制方式状态机(idle → turning → done)推荐容差2°~3° (可根据实际调整)

qqqweiweiqq的博客 314

Java权限修饰符(一)

Java权限修饰符(一)

mjl_1451100634的博客 212

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

java基础(一)----四种权限修饰符详解以及总结

引言: 大家都知道,java中的权限修饰符有四种,在开发过程中无时无刻不在用,但是并没有很好的总结和区分,现在整理一下,在什么情况下,用那种权限。 Java四种权限修饰符包括:private、default、protected、public; 修饰符所能访问的目录结构如下图: ...

D_first的博客 2405

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Java学习——面向对象(一)权限修饰符/内存访问

Java学习(三) 类与对象 1、类 类中可以定义的内容: 1.成员变量(类中定义的属性) 2.成员方法(类中定义的方法) 3.静态变量(被static修饰过的变量) 4.静态方法(被static修饰过的方法) 5.局部变量(方法中定义) 6.构造方法(与类名同名,只要实例化对象就会调用,后面会写到) 2、类与对象的关系: 类是对象的模版,对象是类的实例; 一个类可以创建N个对象,但每个对象...

qq_40343117的博客 262

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Java学习【阶段一[04]】继承与多态(09权限修饰符)

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

qq_41915980的博客 121

Java学习总结(一)—— 权限修饰符、static、final、abstract的总结

public 公有的: 在任何位置都可以看见 可以修饰类 可以修饰属性 可以修饰方法 protected 保护的:同包中可见,子类内部可见,修饰的都是类内部声明的资源 可以修饰内部类 可以修饰属性 可以修饰方法 default(就是什么都不写) 默认的:当前包中可见,不同包中的子类中是不可见的 可以修饰类 可以修饰属性 可以修饰方法 private 私有的:仅仅在类内部...

MrBean1993的博客 353

Java中权限修饰符

stay hungry,stay foolish! 157

java权限修饰符

weixin_35695688的博客 68

Java--权限修饰符

Jeryy--的博客 159

java的4种权限修饰符

gtkknd的专栏 470

Java学习的随笔(一)对象概念、this指针、权限修饰符

最近在看《Java编程思想》,下面按照最近看书的顺序梳理一下心得,由于是初次学习,大部分心得是摘抄自书中: 1. Java中,每个变量都是一个对象。   在创建时首先在内存的堆栈中创建一个该对象的引用,然后调用该对象的构造函数在内存的堆上面建立该对象,并将该对象与堆栈中的引用相连接。   例如:Stack test = new Stack();   在等号左面 Stack test 首先创...

weixin_30706507的博客 79

Java权限修饰符Private,Default,Protected,Public

文章目录1. 为什么需要权限修饰符2. 权限修饰符可见性范围3. Protected关键词详解参考链接 1. 为什么需要权限修饰符 ​ 权限修饰符是为了满足封装的需要,面向对象编程一大特性就是封装,封装不仅要做到隐藏类的属性和函数,也要做到暴露一些属性和函数给外界调用。为了满足这个需求,就产生了权限修饰符 2. 权限修饰符可见性范围 权限修饰符 同一个类 同一个包 不同包的子类 不同包的非子类 Private √ Default √ √ Protected √ √ √

qq_44723152的博客 284

Java学习路线(进阶篇一)static、单例、代码块、继承,包、权限修饰符、final、常量、枚举、抽象类、接口,多态、内部类

一、static、单例、代码块、继承 1、static(静态)-被修饰的变量在内存中只存储一份,可以被共享访问和修改。类中定义一个方法,若这个方法是以执行一个通用功能为目的,或者需要方便访问,则可以申明为静态方法。(即可用类名访问也可用对象访问)-----工具类(里面都是静态方法):对于一些应用程序中多次需要用到的功能,可以将这些功能封装成静态方法,放在一个类中,这个类就是工具类。(方便调用、提高代码的复用)–(一般将工具类的构造器私有(不需要创建对象,创建对象浪费内存),不让工具类对外产生影响) 注意事项

weixin_44697764的博客 978

java面向对象包,权限修饰符,final关键字详解

​ 学习了继承后,我们知道,子类可以在父类的基础上改写父类内容,比如,方法重写。如果有一个方法我不想别人去改写里面内容,该怎么办呢?Java提供了final关键字,表示修饰的内容不可变。final: 不可改变,最终的含义。可以用于修饰类、方法和变量。类:被修饰的类,不能被继承。方法:被修饰的方法,不能被重写。变量:被修饰的变量,有且仅能被赋值一次。

m0_58975186的博客 713
上一篇: Java
下一篇: Java(二) this 和super 详解
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值