当前位置: 首页 > news >正文

黑马程序员java部分笔记(持续更新)十点二:封装

面向对象的三大特征:封装,继承,多态
告诉我们正确的属性与方法
例1:需求:定义一个类:人
属性:姓名,年龄
行为:吃饭,睡觉  
代码:
public class Person{
String name;
int age;

public void eat(){
System.out.println("吃饭")
}
public void sleep()
{
System.out.println("睡觉");
}
}

例2:
需求:人画圆,对于这个需求进行面向对象设计

分析:画圆是一个行为,同时创建了圆对象和人对象,应该把画圆这个动作写在哪里呢?

Answer:写在圆里


对象代表什么,就得封装对应的数据,并提供对应的行为

【简而言之就是】关于圆的所有属性(包括如果行为用到对应属性)都要放在圆里

例三:
人关门需要把关门这个动作写在哪里?

A:写在门方法里
public class Door{
public void open(){
...//开门,修改门的数据
}
public void close(){
...
}
}


封装的好处:
SUM公司在提供的API文档里封装好了对应的方法,需要时直接调用方法即可,可以极大的降低学习成本

如上

http://www.lryc.cn/news/318152.html

相关文章:

  • ChatGPT-Next-Web SSRF漏洞+XSS漏洞复现(CVE-2023-49785)
  • 【小黑嵌入式系统第十九课】结课总结(三)——操作系统部分(RTOSμC/OS-Ⅲ程序设计基础(任务函数时间临界区通信))
  • C# Onnx C2PNet 图像去雾 室内场景
  • 工作中Git如何切换远程仓库地址
  • 香港理工大学主办!2024年第八届电力能源系统与应用国际会议(ICoPESA 2024)即将召开!
  • 【微服务-Nacos】Nacos集群的工作原理及集群间数据同步过程
  • LeetCode202.快乐数
  • c++面试整理(二)
  • Python中的区块链技术与应用
  • opencv-python 霍夫变换圆形检测:HoughCircles
  • 行为型-观察者模式
  • 《ElementPlus 与 ElementUI 差异集合》el-input 和 el-button 属性 size 有变化
  • pxe安装mini centos系统
  • Android studio 性能调试
  • java8特性 stream流中map函数的使用
  • 【Emgu CV教程】9.5、形态学常用操作之形态学梯度
  • 算法笔记之蓝桥杯pat系统备考(2)
  • 基于SpringBoot+Druid实现多数据源:注解+编程式
  • 已解决org.apache.zookeeper.KeeperException.BadVersionException异常的正确解冲方法,亲测有效!!!
  • 数据结构:堆
  • CSS中三栏布局的实现
  • Linux搭建我的世界(MC)整合包服务器,All the Mods 9(ATM9)整合包开服教程
  • 让数据在业务间高效流转,镜舟科技与NineData完成产品兼容互认
  • 2.1HTML5基本结构
  • 设置浏览器显示小于12px以下字体
  • web蓝桥杯真题:成语学习
  • 外包干了5天,技术明显退步。。。。。
  • Vue:自定义消息通知组件
  • 2023 收入最高的十大编程语言
  • Github 2024-03-11 开源项目周报 Top15