python面向对象

作者: 华丽的微笑 | 来源:发表于2017-11-11 10:22 被阅读0次

1.面向对象的理解

面向对象是一种设计思想

符合人们的思考习惯

把执行者变成指挥者

简化功能,把复杂的事情简单化

想完成一个事,找具有这样功能的对象

如果能找到,调用这个对象的功能,完成这个事

如果找不到,创建具有这样功能的对象,再调用完成这个事

面向对象有三大特征:

封装

继承

多态


2.类和对象

对象是面向对象编程的核心,在使用对象的过程中,为了将具有共同特征和行为的一组对象抽象定义,提出了另外一个新的概念——类

类就相当于制造飞机时的图纸,用它来进行创建的飞机就相当于对象

类是对事务的描述,是抽象的。

对象是类的具体体现。

类对事务的描述:属性(名词)和行为(动词)

例如:

奔驰汽车 类

奔驰smart 类

张三的那辆奔驰smart 对象

狗 类

大黄狗 类

李四家那只大黄狗 对象

水果 类

苹果 类

红苹果 类 红富士苹果 类

我嘴里吃了一半的苹果 对象


3.类的构成

类(Class) 由3个部分构成

类的名称:类名

类的属性:一组数据 属性、变量

类的方法:允许对进行操作的方法 (行为) 方法

举例:

1)人类设计,只关心3样东西:

事物名称(类名):人(Person)

属性:身高(height)、年龄(age)


方法(行为/功能):跑(run)、打架(fight)

2)狗类的设计

类名:狗(Dog)

属性:品种 、毛色、性别、名字、 腿儿的数量

方法(行为/功能):叫 、跑、咬人、吃、摇尾巴

4.类的抽象

拥有相同(或者类似)属性和行为的对象都可以抽像出一个类

方法:一般名词都是类(名词提炼法)

<1> 坦克发射3颗炮弹轰掉了2架飞机

坦克--》可以抽象成 类

炮弹--》可以抽象成类

飞机-》可以抽象成类

<2> 小明在公车上牵着一条叼着热狗的狗

小明--》 人类

公车--》 交通工具类

热狗--》 食物类

狗--》 狗类


5.定义类

定义一个类,格式如下:

class 类名:

方法列表

demo:定义一个Car类

# 定义类

class Car:

# 方法

def getCarInfo(self):

print('车轮子个数:%d, 颜色%s'%(self.wheelNum, self.color))

def move(self):

print("车正在移动...")

说明:

定义类时有2种:新式类和经典类,上面的Car为经典类,如果是Car(object)则为新式类

类名 的命名规则按照"大驼峰"


6.创建对象

创建对象的格式为:

对象名 = 类名()

创建对象demo:

class Car:

def move(self):

print('it it move fast')

def toot(self):

print('it is dudu')

bmw=Car()

bmw.color='黑色'

bmw.wheelNum=4

bmw.move()

bmw.toot()

print(bmw.color)

print(bmw.wheelNum)

结果为:

it it move fast

it is dudu

黑色

4

bmw = Car(),这样就产生了一个Car的实例对象,此时也可以通过实例对象bmw来访问属性或者方法

第一次使用bmw.color = '黑色'表示给bmw这个对象添加属性,如果后面再次出现bmw.color = xxx表示对属性进行修改

bmw是一个对象,它拥有属性(数据)和方法(函数)

当创建一个对象时,就是用一个模子,来制造一个实物


7.__init__()方法

1)使用方式

def 类名:

#初始化函数,用来完成一些默认的设定

def __init__():

pass

2)__init__()方法的调用

class Car:

def __init__(self):

self.wheelNum=4

self.color='蓝色'

def move(self):

print('车在移动的很快')

bmw=Car()

print('车的颜色为%s'%bmw.color)

print('车轮胎的数量为: %d'%bmw.wheelNum)

bmw.move()

运行结果为:

车的颜色为蓝色

车轮胎的数量为: 4

车在移动的很快

相关文章

网友评论

    本文标题:python面向对象

    本文链接:https://www.haomeiwen.com/subject/vdrwmxtx.html