我理解的面向对象(OOP)01

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的对象添加两个属性

创建多个对象










猜你喜欢

转载自blog.csdn.net/fengge02/article/details/79974564