JAVA 成员访问权限修饰符

修饰符         类内部     package内         子类         其他 

public             允许         允许                 允许         允许 
protected       允许         允许                 允许          不允许 
default           允许         允许                 不允许       不允许 
private           允许         不允许             不允许        不允许 

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

 

Java语言定义了public、protected、private、abstract、static和final这6常用修饰 
词外还定义了5个不太常用的修饰词,下面是对这11个Java修饰词的介绍: 
1.public 
使用对象:类、接口、成员 
介绍:无论它所处在的包定义在哪,该类(接口、成员)都是可访问的 
2.private 
使用对象:成员 
介绍:成员只可以在定义它的类中被访问 
3.static 
使用对象:类、方法、字段、初始化函数 
介绍:成名为static的内部类是一个顶级类,它和包含类的成员是不相关的。静态方法 
是类方法, 
是被指向到所属的类而不是类的实例。静态字段是类字段,无论该字段所在的类创建了 
多少实例,该字 
段只存在一个实例被指向到所属的类而不是类的实例。初始化函数是在装载类时执行 
的,而不是在创建 
实例时执行的。 
4.final 
使用对象:类、方法、字段、变量 
介绍:被定义成final的类不允许出现子类,不能被覆盖(不应用于动态查询),字段值 
不允许被 
修改。 
5.abstract 
使用对象:类、接口、方法 
介绍:类中包括没有实现的方法,不能被实例化。如果是一个abstract方法,则方法体 
为空,该方 
法的实现在子类中被定义,并且包含一个abstract方法的类必须是一个abstract类 
6.protected 
使用对象:成员 
介绍:成员只能在定义它的包中被访问,如果在其他包中被访问,则实现这个方法的类 
必须是该成 
员所属类的子类。 
7.native 
使用对象:成员 
介绍:与操作平台相关,定义时并不定义其方法,方法的实现被一个外部的库实现。 
8.strictfp 
使用对象:类、方法 
介绍:strictfp修饰的类中所有的方法都隐藏了strictfp修饰词,方法执行的所有浮点 
计算遵守 
IEEE   754标准,所有取值包括中间的结果都必须表示为float或double类型,而不能利用 
由本地平台浮 
点格式或硬件提供的额外精度或表示范围。 
9.synchronized 
使用对象:方法 
介绍:对于一个静态的方法,在执行之前jvm把它所在的类锁定;对于一个非静态类的方 
法,执行 
前把某个特定对象实例锁定。 
10.volatile 
使用对象:字段 
介绍:因为异步线程可以访问字段,所以有些优化操作是一定不能作用在字段上的。 
volatile有时 
可以代替synchronized。 
11.transient 
使用对象:字段 
介绍:字段不是对象持久状态的一部分,不应该把字段和对象一起串起。

转载于:https://www.cnblogs.com/aligege/p/7421470.html

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

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

相关文章

微信 网页开发 获取地理位置 高德地图显示

1、微信中获取地理位置经纬度 wx.getLocation({type: wgs84, // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入gcj02success: function (res) {const latitude res.latitude // 纬度,浮点数,范围为90 ~…

支付宝异步通知验签失败解决方案

原贴地址:https://openclub.alipay.com/read.php?tid1598&fid69,欢迎大家访问 说明: 验签只需要使用到支付宝公钥 ,而不是使用应用公钥!错误原因: 1.支付宝公钥使用错误导致 2.验签方法使用错误 3.…

工作96:当前页面拿id

reject(){putAction("/order/"this.ListId"/status",{status:-1,remark:""}).then(res>{this.$message({message: 审核撤回状态修改,type: success});this.close();})},/*审核通过的方法 定义在混入里面*/approve(){/*控制审核状态成功*/putA…

使用ftp上传文件到Unix系统注意事项

使用ftp上传文件到Unix系统注意事项 在使用FTP客户端上传文件到Unix系统时,应该注意将传输模式设置为二进制(Binary)传输模式,否则有可能造成传输到Unix系统的文件与实际文件大小不一致,文件无法使用。

度度熊回家

一个数轴上共有N个点,第一个点的坐标是度度熊现在位置,第N-1个点是度度熊的家。现在他需要依次的从0号坐标走到N-1号坐标。但是除了0号坐标和N-1号坐标,他可以在其余的N-2个坐标中选出一个点,并直接将这个点忽略掉,问度…

微信地图 leaflet 腾讯地图

本来在微信项目中使用的高德地图,发现不是想象中的好用,而且用了微信,感觉使用腾讯地图会比较方便,所以,索性使用leaflet腾讯地图的底图来实现。 其中关于正确使用腾讯地图参考了https://github.com/wuxiashuangji/TX…

支付宝会员卡开卡表单模板配置(alipay.marketing.card.formtemplate.set)JAVA版本demo

官方接口文档: https://docs.open.alipay.com/251/105668/ ,我这里写的是开卡组件前两步的操作流程, 仅供参考1. 调用接口前的准备工作(创建应用等)参考该文档 :https://docs.open.alipay.com/251/105731/2.核心代码,这…

AIX 6.1安装JDK6环境变量设置

AIX 6.1安装JDK6环境变量设置 1、将JDK6_64.sdk.tar.gz上通过FTP以二进制(Binary)模式上传到服务器上2、解压JDK:gunzip -c JDK6_64.sdk.tar.gz | tar -xvf -3、通过 SMIT:运行 smitt install。 选择 Install and Update Software…

微信获取位置 转化为 高德地图 位置 地址

从高德地图转到直接使用QQ地图了,留下在微信网页开发中的代码片段 async getLocation () {// 1、获取微信的坐标const { latitude, longitude } await new Promise((resolve, reject) > {wx.getLocation({type: wgs84, // 默认为wgs84的gps坐标,如果…

web项目从Myeclipse迁移到idea的二三事

今天新接手了一个myeclipse项目,想把这个项目从myeclipse迁移到idea,花了点时间,也遇到一些新的问题,打算记录下来。 这是myeclipse的项目结构 我整理一下 整理的时候,我碰到了一下的一下的一些问题: 1 . m…

微信公众平台无法使用支付宝收付款的解决方案

微信中无法打开支付宝收款是微信浏览器限制所致,可以参考下图方法引导用户转到系统浏览器,即可用支付宝收款。点此下载。 1、引导用户选择在浏览器中打开支付链接,以完成支付。如图1所示:图12、用支付宝继续完成支付,如…

vux radio 改造为 tree 代码片段

思路&#xff1a;用全角空格和半角空格做区分。 1、自己写的部分 this.toOptions arr.map(x > {let kong for (let i 1; i < x.level; i i 1) {kong kong  }kong kong let icon https://s1.ax1x.com/2018/09/27/iML0BD.pngif (x.level 1) {icon https://s1…

Linux下部署多个Tomcat

Linux下部署多个Tomcat 1.环境&#xff1a;1.1.Centos 5.01.2.apache-tomcat-6.0.182.需要解决一下几个问题2.1.不同的tomcat启动和关闭监听不同的端口2.2.不同的tomcat的启动文件startup.sh 中要指定各自的CATALINA_HOME和CATALINA_BASE这两个环境变量。3.解决步骤&#xff1a…

将检索出来的列按逗号拼接起来

(STUFF((select , USER_NAME from TBL_BIZ_TRSBILLS_DETAIL where TRANSPORT_CODE TB.TRANSPORT_CODE and USER_TYPE 司机 for xml path()),1,1, )) AS DRIVER_NAMES 这个语句的意思是&#xff1a;用‘&#xff0c;’将查询到的司机姓名拼接起来&#xff0c;然后用 替换掉…

maven已支持支付宝开放平台SDK

「好消息通知」开放平台SDK 标准版 以官方的名义上传了中央仓库&#xff01;支持maven引入调用&#xff01;开发者可以参考使用中央仓库地址&#xff1a;https://mvnrepository.com/artifact/com.alipay.sdk/alipay-sdk-java 后续在 https://docs.open.alipay.com/54/103419/ …

工作99:任务加1逻辑

/*控制任务的添加功能*/addFrom(index,item) {var tasks {name: "",start_time: null}this.form.departmentList[index].accounts[item].tasks.push(tasks);},

mac 查看端口并终结

1、查看 lsof -i tcp:80812、显示结果如下 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME node 96952 caowei 14u IPv4 0xa209f905c4d41d47 0t0 TCP *:sunproxyadmin (LISTEN)3、使用kill终结 kill 96952

ODP.net与Oracle连接

ODP.net是Oracle提供的数据库访问类库&#xff0c;其功能和效率上都有所保证&#xff0c;它还有一个非常方便特性&#xff1a;在客户端上&#xff0c;可以不用安装Oracle客户端&#xff0c;直接拷贝即可使用。以下内容转载自&#xff1a;http://blog.ywxyn.com/index.php/archi…