01面向对象是什么?
(object-oriented) OO (object-oriened pragramming) OOP
面向对象是一种程序设计思维,相对于面向过程而言,面向对象开发效率高,复用性强
面向对象采用基于对象(实体)的概念建立模型;解决问题用对象
02类和对象
对象就是看得见,摸的着的;
类:模板
大黄狗 类(概念,名词的一般是类)
张三牵着大黄狗(对象,实体化的,明确的一般是对象) 具体问题具体分析
03类的构成(通俗理解和python中的类)
通俗理解-----
类由三部分构成(类的名称:类名;类的属性:属性;类的方法:方法;)
实例:定义一个坦克类
类名:Tank
类的属性:重量,速度,材料
类的方法:开炮,移动,转弯
python来定义类-------
#类名
class Tank:
#属性
def __init__(self):
self.weight=400
self.speed=10
self.material="钢铁"
#方法
def move(self):
print("tank正在快速移动)
def fire(self):
print(tank正在开炮)
def turn(self):
print("tank正在转弯)
04类的抽象
把现实生活中的场景用类来描述就是类的抽象
一切都是类
05创建对象
描述和了解了那么多类的知识,最终我们讲的是面向对象,回到对象。
python中的类和对象是通过模板来创建对象
创建对象的机制,原理
类的实例
class Cat():
def eat()
pass
def drink()
pass
#创建一个对象
Cat() 往往把创建好的对象赋值给一个变量 形如 tom = Cat() 用这个变量tom来保存对象
定义一个Cat()类
执行Cat()--------执行后会开辟一块新的内存空间 返回对象的引用(即内存地址)
tom 是变量-------是指向引用地址(对象)
调用对象的方法
tom.eat() tom.drink()
给对象添加属性(就是变量)
tom.name="汤姆"
tom.age=40
给tom的对象添加两个属性