深入理解OOP
# OOP思想> IS-A,IS-LIKE-A, HAS-A的区别
https://blog.csdn.net/zhuochuyu7096/article/details/84142184
# has-a is-a
可以理解为a是父类
# final
使用 final修饰
属性:一旦在声明时或构造函数中给属性赋值,它的值就不能再改变
类中的`final`属性的值可以在构造函数中初始化,但初始化后就不能再修改了
类:当你将一个类声明为`final`时,它表示该类不能被继承
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 泛型
# 接口
# IS-A
is a: 代表的是类之间的继承关系
在知识表示、面向对象程序设计与面向对象设计的领域里,is-a英语,包含架构)指的是类的父子继承关系,例如类D是另一个类B的子类(类B是类D的父类)。 换句话说,通常”Dis aB”(B把D包含在内,或是D被包含在B内)指的是,概念体D物是概念体B物的特殊化,而概念体B物是概念体D物的一般化。举例来说,水果是苹果、橘子、芒果与其他水果的一般化。
1
2
3
4
2
3
4
# HAS-A
has-a: 用于描述一个类具有另一个类的对象作为其成员 和contains-a 没有本质的区别
# 关键在于:在一个类中可以操作另一个类的属性和功能
通过组合,一个类可以拥有其他类的功能和属性,从而实现更强大的对象模型和代码重用。
1
2
3
4
2
3
4
# CONTAINS-A
contains-a: 用于描述一个类包含另一个类的对象作为其成员变量
1
# IS-LIKE-A
# 表示组合
is-like-a: 代表类与类之间的组合关系
1
2
2
上次更新: 2023-06-21 15:59:42