面向对象编程简单讲解
2019-06-27 本文已影响0人
吉祥鸟hu
image
面向对象编程
定义:把函数进行分类和封装后放入对象中,使得开发更快、更强。
面向对象编程的两大特性:
- 封装
- 继承
1. 封装
顾名思义就是把内容封装好,在调用封装好的内容。封装分两步:
- 第一步为封装内容
- 第二步为调用封装内容
class Person: #创建类
def __init__(self,name,age): #__init__()方法称为类的构造方法
self.name = name
self.age = age
def detail(self): #通过self调用被封装的内容
print(self.name) #调用属性
print(self.age)
obj1 = Person('santos',18) #将santos和18分别封装到obj1(即:self的name和age属性)
obj1.detail() #python将obj1传给参数self(即:obj1.detail(obj1),此时内部self=obj1)
santos
18
2. 继承
继承是以普通的类为基础建立专门的类对象。面向对象编程的继承和现实的继承类似,子类继承父类的某些特质。例如:
动物:吃喝拉撒
猫: 喵喵叫,继承动物的功能
狗: 汪汪叫,继承动物的功能
class Animal:
def eat(self):
print('%s 吃 ' %self.name)
def drink(self):
print('%s 喝 ' %self.name)
def shif(self):
print('%s 拉 ' %self.name)
def pee(self):
print('%s 撒 ' %self.name)
class Cat(Animal):
def __init__(self,name):
self.name = name
def cry(self):
print('喵喵叫')
class Dog(Animal):
def __init__(self,name):
self.name = name
def cry(self):
print('汪汪叫')
c1 = Cat('小白家的小黑猫')
c1.eat()
c1.pee()
c1.cry()
d1 = Dog('胖子家的狗')
d1.eat()
d1.cry()
小白家的小黑猫 吃
小白家的小黑猫 撒
喵喵叫
胖子家的狗 吃
汪汪叫