2020-08-06

第八章 封装

面向对象的三大特征之:封装性
1.创建完对象以后,如果直接通过“对象名.属性名”的方式给属性赋值的话,可能会出现一些不符合实际情况的问题,所以不考虑使用这种方式赋值,而是通过“对象名.方法名()”的方式进行赋值,可以在方法里面加上大量的业务逻辑,对属性进行限制
解决方式:
①将属性私有化
②提供公用的(get and set)方法实现属性的取值和赋值
2.在我们去创建对象的时候,会用到一个特殊的方法叫做构造方法,构造器
怎么去创建一个构造方法?
public 构造方法名(形参)
注意
①构造方法没有返回值
②构造方法名必须和你当前类的名字一模一样
作用:
①创建对象,new的时候就是调用了构造方法
②在创建对象的同时,我们可以调用有参的构造方法,直接对属性赋值
构造方法是一个方法,可以实现方法重载
注意
如果没有显示的定义构造方法,系统会默认的提供一个无参的构造方法
如果显示的定义了一个构造方法,系统不会再提供,需要我们手动的创建一个无参的
有参构造方法和无参构造方法
①使用有参的构造方法给属性赋值,new对象的同时给属性赋值,省去了set方法的麻烦,针对多个属性同时赋值
②set针对于单个变量进行更改
3.成员变量和局部变量出现重名时,方法会根据就近原则使用局部变量的值
如果想区分成员变量和局部变量,可以使用this关键字
this.成员变量
什么是this?
①this代表当前使用的对象或者正在创建的对象,谁通过对象调用了方法谁就是this
②this可以修饰成员变量、方法、构造方法,直接在成员变量名,或者成员方法名前面加上this即可
③可以在构造方法中通过“this(形参)”的方式调用本类其他构造方法
注意
在构造方法内部this(“形参”)必须放在首行
如果一个类里有n个构造方法,最多有n-1个构造方法内部使用了this

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值