Java 7.面向对象2(类的封装设计(重点);this关键字的用法;构造方法)

总览

1.我们要把数据封装在哪些类里?
2.什么是封装?
3.this关键字的用法
4.构造方法(有参和无参构造方法)

一、我们要把数据封装在哪些类里?

1.思想

我们应该把数据封装在 javabean 类中

案例1:
如果我们要画一个圆,那么不是我们能去画,而是去调用圆的对象
在这里插入图片描述
在这里插入图片描述
案例2:
如果我们要关门,也不是我们让门关上,而是调用门对象中 关门的方法
在这里插入图片描述

二、什么是封装?

1.封装案例 · 提出问题

如果我们设定一个女朋友类,里面有一个 age 属性,代表女朋友的年龄
女朋友的年龄总不能是负数吧!!??
但是我们没法在修改对象的属性的时候判断我们输入的到底是正数还是负数,怎么办?
在这里插入图片描述

2.解决办法

我们可以将女朋友类中,女朋友的属性 age 设为 private
这样有一个好处,就是外界无法直接修改该属性,我们必须写一个方法来对age进行操作
在这个方法中,我们可以使用条件判断语句来规定 age 应该符合什么样的标准
写法如下,细品。
在这里插入图片描述

三、this关键字的用法

1.原理

在一个类中,正常来说我们使用属性应该是 this.属性 ,但是我们都简写成了 属性
所以我们想要通过方法来进行赋值的时候,传进来的形参名 name ,应该被赋值给对象中的属性 name
对象中的 name 属性,完整写法为 this.name!

2.实际参考

在 setName(String name){}方法中,
this.name 指的是 private String name 中的 name,也就是对象的属性 name
name 指的是 传进来的新值

在这里插入图片描述

四、构造方法

1.原理

1.1 正常来说,如果我们不写,那么类会自带一个无参的构造方法
1.2 我们可以制造有参的构造方法,来在创造对象的时候就给属性赋值
1.3 一旦我们自己写了构造方法,那么系统就不会提供空参的构造方法
1.4 如果我们写了有参构造方法,就必须写上无参的构造方法!因为一旦写了有参的构造方法,无参的构造方法java就不会自己给提供了。

2.实际展示

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我会为您简单介绍一下面向对象的程序设计思想、Python 对象、类、封装、继承、方法构造函数和析构函数以及类的继承与组合。 面向对象的程序设计思想是一种以对象为中心的编程思想,它将数据和操作数据的方法打包在一起,以对象的方式进行组织和管理。在面向对象的程序设计中,对象是指具有一定状态和行为的实体,类则是对象的模板或蓝图,可以用来创建对象。 Python 中一切皆为对象,包括数字、字符串、列表、元组等等。在 Python 中,我们可以通过定义类来创建自己的对象。类是一种用户自定义的数据类型,它包含了数据和对数据进行操作的方法封装面向对象程序设计中的一个重要概念,它指的是将数据和方法封装在一起,以保证数据的安全性和稳定性。在 Python 中,可以使用访问修饰符来实现封装,例如使用双下划线(__)来定义私有属性或方法。 继承是面向对象程序设计中的另一个重要概念,它指的是一个类可以继承另一个类的属性和方法。在 Python 中,可以通过在类定义时指定基类来实现继承,例如 class SubClass(BaseClass):。 方法是类中定义的函数,用于对对象进行操作。在 Python 中,方法的第一个参数默认为 self,代表当前对象构造函数是一种特殊的方法,它在对象创建时被调用,用于初始化对象的属性。在 Python 中,构造函数的名称为 __init__。 析构函数是当对象被销毁时自动调用的函数,它可以用于释放对象占用的资源,例如关闭文件或数据库连接。在 Python 中,析构函数的名称为 __del__。 类的继承与组合是面向对象程序设计中的两种实现继承关系的方式,继承是一种 IS-A 的关系,组合是一种 HAS-A 的关系。在 Python 中,可以通过继承和组合来实现类的复用和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MicroLindb

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值