面向对象封装、构造方法

成员变量和局部变量区别

1、在类中的位置不同
成员变量在类中、方法外
局部变量在方法中或方法声明上(形参)
2、在内存中位置不同
成员变量在堆内存
局部变量在栈内存
3、生命周期不同
成员变量随着对象的创建而存在,随着对象的消失而消失
局部变量随着方法的调用而存在,随着方法的调用完毕而消失
4、初始化值得问题
成员变量有默认值(使用时可不赋值,会用默认值)
局部变量没有默认值,必须先定义、赋值,然后才能使用(使用前必须赋值)

封装

1、概述
封装是面向对象三大特征之一;是面向对象编程语言对客观世界的模拟,成员变量都是隐藏在对象内部的,外界无法直接操作和修改
2、原则
将不需要对外提供的内容隐藏起来;
把属性隐藏,提供公共方法对其访问;
成员变量private,提供对应的getter/setter方法
3、好处
通过方法来控制成员变量的操作,提高了代码的安全性;
把代码用方法进行封装,提高了代码的复用性
4、this关键字
(1)this:代表所在类的对象引用
方法被哪个对象调用,this就代表那个对象
(2)什么时候用
局部变量和成员变量重名

构造方法

1、用处
主要用来给对象的数据进行初始化
2、构造方法格式
方法名与类名相同
没有返回值类型,连void都没有
没有具体的返回值
3、构造方法注意项与重载
不提供构造方法,系统会给出默认构造方法
提供了构造方法,重载条件和普通方法相同
构造方法也是可以重载的,重载条件和普通方法相同
4、抽象类可以有构造方法
抽象类可以有构造方法,只不过是不能直接创建抽象类的实例对象;在继承了抽象类的子类中,通过super(参数列表)调用抽象类中的构造方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值