java面向对象三大特征--基本概念

封装

封装的原理:

实例变量默认只能被当前类的对象方法访问,如果强行要访问,只能在成员变量的声明前加@public,而这样的成员变量就暴露给了外界,是不安全的。封装就是不允许外界直接访问成员属性,提供set和get方法给外界,用于设置和获取属性的值。我们可以在set方法里面对参数进行过滤,防止外界的恶意修改。

封装的好处:

(1)过滤不合理的值 (2)屏蔽内部的赋值过程 (3)让外界不必关注内部的细节

set方法的作用:用来设置成员变量,可以在方法里面过滤掉不合理的值

get方法的作用:返回对象内部的成员变量

成员变量的命名规范:

(1)成员变量都以下划线 _ 开头

(2)可以跟get方法的名称区分开

(3)可以跟其他局部变量区分开,一看到下划线开头的变量,肯定是成员变量

调用方法有两种:一种是使用[p setAge],[p age],另一种是使用点语法,p.age,编译器会根据是赋值还是被赋值来判断使用get方法还是set方法,然后用相应的调用方法替换。

继承
如果两个类有相同的属性和行为,可以抽取出来组成一个新的类,这个新的类就是前面两个类的父类。而前两个类称之为子类。
子类可以在父类的基础上扩充属性和方法,这就是继承。
继承的优点:
(1)不改变原来模型的基础上,扩充方法
(2)建立了类与类之间的联系
(3)抽取了公共代码
继承的细节:
(1)属于单继承(子类只能继承一个父类)
(2)属性不可重定义 (3)方法可重写
(4)父类的私有属性能被继承,不能被使用

多态

多态的条件:有继承关系、有方法重写

代码体现:用父类类型的指针指向了子类对象,这就是多态

多态的局限性:

不能访问子类的属性(可以考虑强制转换)

多态的细节:

动态绑定:在运行时根据对象的类型确定动态调用的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值