Java——四种访问控制权限及Java命名规范
时间:2022-07-25
本文章向大家介绍Java——四种访问控制权限及Java命名规范,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1、访问控制权限
之前的博文中提到了访问控制权限,本文系统的讲解下。Java中一共定义四种访问控制权限,由小到大的顺序是:private<defult<protected<public。这四种特点如下:
序号 |
范围 |
private |
default |
protected |
public |
---|---|---|---|---|---|
1 |
同一包中的同一类 |
√ |
√ |
√ |
√ |
2 |
同一包中的不同类 |
√ |
√ |
√ |
|
3 |
不同包的子类 |
√ |
√ |
||
4 |
不同包的非子类 |
√ |
除了public,其他的都属于封装,但是真正来讲,开发中会使用的封装只有:private、protected
【举例】:观察protected访问控制权限
- 定义demoa.A程序类
package com.example.myapplication.demoa;
public class A {
protected String info = "hello";
}
- 定义demob.B程序类,该类导入A,并进行继承;
package com.example.myapplication.demob;
import com.example.myapplication.demoa.A;
public class B extends A {
public void print(){
System.out.println(super.info);
}
}
以上可见,B是A的子类,直接访问了A中的protected属性。
- 测试程序
package com.example.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.example.myapplication.demob.B;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
B b = new B();
b.print();
}
}
【举例】错误的代码:下面,不使用子类B,直接在测试类中操作A
实际开发中,基本都会遵循这样的原则:属性使用private定义,方法使用public定义。
2、Java命名规范
类名称每个单次的首字母必须大写,eg:TestDemo;
- 属性名称:第一个单次的字母小写,而后每个单次的首字母大写,eg:studentName;
- 方法名称:第一个单次的字母小写,而后每个单次的首字母大写,eg:setName;
- 包名称:所有的字母全部小写,eg:com.example.myapplication;
- 常量名称:所有的字母全部大写,eg:public static final String INFO="hello";
- Spring Cloud中声明式服务调用Feign
- Spring Cloud中Hystrix仪表盘与Turbine集群监控
- 轻量级压力测试工具 - AB
- Spring Cloud中Hystrix的请求合并
- Spring Cloud中Hystrix的请求缓存
- mysql主从复制配置
- Spring Cloud系列勘误
- Spring Cloud Stream使用细节
- Redis3 对集群进行重新分片
- Spring Cloud Stream初窥
- jquery事件绑定性能测试
- Spring Cloud Bus整合Kafka
- 图解Mac下如何安装管理MySQL
- Spring Cloud Bus整合RabbitMQ
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Java.lang.Illegalaccessexception 或 java.lang.NoSuchMethodError
- Python 爬虫进阶必备 | 关于某电商 token 参数加密逻辑分析
- Python 爬虫进阶必备 | 某直播数据分析平台加密参数 sign 分析
- Python 爬虫进阶必备 | 某指数分析平台解密逻辑分析
- SpringBoot开发秘籍 - 事件异步处理
- Hive on Spark参数调优姿势小结
- 想跨端开发小程序?这个最流行的跨端框架一定要学习!
- 1分钟搞定 Nginx 版本的平滑升级与回滚
- 详解:如何在uni-app中选择一个合适的UI组件库
- Python处理HTTP请求之requests指北
- 习题 3: 数字和数学计算
- Python桌面图形程序美化的方法论
- Windows 入侵痕迹清理技巧
- Linux 入侵痕迹清理技巧
- 面经手册 · 第10篇《扫盲java.util.Collections工具包,学习排序、二分、洗牌、旋转算法》