20220724-Java的封装相关
2024-09-07 05:30:56
含义
封装 (encapsulation)
指隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
常见使用方法
class Person {
// 将属性私有化
private String name;
private int age;
private double salary;
// 构造器
public Person(String name, int age, double salary) {
this.setName(name);
this.setAge(age);
this.setSalary(salary);
}
// 公共的获取属性方法
public String getName() {
return name;
}
// 公共的设置属性的方法
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
}
个人理解
- 类中可以包含属性和方法,public和默认修饰符可以修饰类、属性和方法,protected和private只能修饰属性和方法。
- 例如电视,内部电路和元器件如何组装等实现细节不需要用户考虑,只需要操作外边提供的按键即可,这是一种常见的隐藏细节,提供接口的封装案例。
- 通常将类中属性设置为private私有化,然后在类中提供属性的set和get方法分别用来设置属性和获取属性。
最新文章
- 数据库访问CRUD;__SELF__和__ACTION__的区别;自动收集表单:$n->;create();
- Qt工程转化为Vs工程
- WordPaster-Firefox浏览器控件安装方法
- 判断是否含有中文,包含返回true,不包含返回false
- sql server中的decimal或者numeric的精度问题
- mybatis中的变量#与$
- JavaScript DOM高级程序设计1.2-循序最佳实践--我要坚持到底!
- HDU 2722 Here We Go(relians) Again
- memcached + php 扩展 for ubuntu
- windows10 conda python多版本切换
- easyui 单元格超出鼠标放上弹出全部
- java 反射模式
- webpack 中版本兼容性问题错误总结
- filedisk.sys
- QT中的线程与事件循环理解(2)
- dialog 菜单
- PYTHON HTML.PARSER库学习小结--转载
- js修改input的type属性问题(兼容所有浏览器,主要用于密码类的默认有提示文字的效果)
- 字符串的最小最大表示法O(n)
- .NET程序调试技巧(一):快速定位异常的一些方法
热门文章
- extcon驱动及其在USB驱动中的应用
- 简易版 vue实现
- Blazor和Vue对比学习(基础1.7):传递UI片断,slot和RenderFragment
- unity---Lighting面板
- Nanodet模型部署(ncnn,openvino)/YOLOX部署(TensorRT)
- Python模块Ⅰ
- 详解TCP四次挥手(断开TCP连接过程)
- 基于云服务MRS构建DolphinScheduler2调度系统
- java面试:关于public static void main(String[] args)是什么意思?
- .NET C#基础(6):命名空间 - 组织代码的利器