面向对象程序设计(Object-Oriented Programming,缩写为 OOP)是一种范式,其基本理念是将数据块及与数据相关的行为封装成为特殊的、名为对象的实体,同时对象实体的生成工作则是基于程序员给出的一系列“蓝图”,这些“蓝图”就是类。
面向对象程序设计基础
对象和类
你喜欢猫吗?希望你喜欢,因为我将用和猫有关的各种示例来解释面向对象程序设计的概念。
这是一个 UML 类图。你将在本书中看到许多类似的图示。
假如你有一只名为卡卡的猫。卡卡是一个对象,也是猫 Cat 这个类的一个实例。每只猫都有许多基本属性: 名字 name 、性别 sex 、年龄 age 、体重 weight 、毛色 color 和最爱的食物等。这些都是该类的成员变量。 所有猫都有相似的行为: 它们会呼吸 breathe 、进食 eat 、奔跑 run 、睡觉 sleep 和喵喵叫 meow 。这些都是该类的方法。成员变量和方法可以统称为类的成员。存储在对象成员变量中的数据通常被称为状态,对象中的所有方法则定义了其行为。 对象是类的实例
你朋友的猫“露露”也是
猫
这个类的一个实例。它拥有与“卡卡”相同的一组属性。不同之处在于这些属性的值:她的性别是“女孩”;她的毛色不同;体重较轻。因此类就像是定义对象结构的蓝图,而对象则是类的具体实例。