【Java】封装和继承
来源:互联网 发布:公路试验资料随机数据 编辑:程序博客网 时间:2024/04/29 09:22
一、封装
二、继承
把数据和方法包装进类中,以及具体实现的隐藏,常共同被称作是封装。
(1)隐藏实现细节,提供公共的访问方式
(2)好处:
A:隐藏实现细节,提供公共的访问方式B:提高代码的复用性C:提高代码的安全性
(3)设计原则
把不想让外界知道的实现细节给隐藏起来,提供公共的访问方式
(4)private是封装的一种体现。
封装:类,方法,private修饰成员变量
(5)封装的结果:
是一个同时带有特征和行为的数据类型;类的定义就是封装的一部分;成员变量与成员方法以及对应的private修饰,公共get/set方法均为封装的一部分。
二、继承
(1)把多个类中相同的成员给提取出来定义到一个独立的类中。然后让这多个类和该独立的类产生一个关系,
这多个类就具备了这些内容。这个关系叫继承。
(2)Java中如何表示继承呢?格式是什么呢?
A:用关键字extends表示B:格式:class 子类名 extends 父类名 {}
(3)继承的好处:
A:提高了代码的复用性B:提高了代码的维护性C:让类与类产生了一个关系,是多态的前提
(4)继承的弊端:
A:让类的耦合性增强。这样某个类的改变,就会影响其他和该类相关的类。原则:低耦合,高内聚。耦合:类与类的关系内聚:自己完成某件事情的能力B:打破了封装性
(5)Java中继承的特点
A:Java中类只支持单继承(一个儿子只能有一个亲生父亲)B:Java中可以多层(重)继承(继承体系)(父亲也有父亲)
(6)继承的注意事项:
A:子类不能继承父类的私有成员B:子类不能继承父类的构造方法,但是可以通过super去访问C:不要为了部分功能而去继承
(7)什么时候使用继承呢?
A:继承体现的是:is a的关系。B:采用假设法
(8)Java继承中的成员关系
A:成员变量
a:子类的成员变量名称和父类中的成员变量名称不一样,这个太简单b:子类的成员变量名称和父类中的成员变量名称一样,这个怎么访问呢?子类的方法访问变量的查找顺序:在子类方法的局部范围找,有就使用。在子类的成员范围找,有就使用。在父类的成员范围找,有就使用。找不到,就报错。
B:构造方法
a:子类的构造方法默认会去访问父类的无参构造方法是为了子类访问父类数据的初始化b:父类中如果没有无参构造方法,怎么办?子类通过super去明确调用带参构造子类通过this调用本身的其他构造,但是一定有一个去访问了父类的构造让父类提供无参构造
C:成员方法
a:子类的成员方法和父类中的成员方法名称不一样,这个太简单b:子类的成员方法和父类中的成员方法名称一样,这个怎么访问呢?通过子类对象访问一个方法的查找顺序:在子类中找,有就使用在父类中找,有就使用找不到,就报错
0 0
- 【Java】封装和继承
- java封装和继承
- java封装和继承
- java 封装、继承和多态
- java封装、继承和多态
- java封装、继承和多态
- Java封装、继承和多态
- Java封装,继承和多态总结
- Java笔记:封装、继承和多态
- JAVA 封装, 继承, 多态
- java--继承封装重载
- Java继承 封装 多态
- JAVA 封装 继承 多态
- JAVA封装,继承,多态
- JAVA 封装、继承、多态
- java之封装、继承
- java封装、继承、多态
- Java封装继承覆盖
- C/C++函数指针和回调函数
- vim配置总结
- 关于SQL 每3分钟一次的统计数据
- 云数据中心网络虚拟化——网络虚拟化的传统技术之VLAN
- 浅谈 java 字符串
- 【Java】封装和继承
- ALV中为日期字段添加F4
- android Notification动态更新
- WebView使用总结
- Runtime那些事儿(消息机制)
- jvm(2)-OutOfMemoryError 异常(内存溢出异常)
- svn版本管理系统的安装 centos+subversion+apache+jsvnadmin
- bzoj1180
- android ImageSwitcher