标签:style 读取文件 同方 方式 参数 python base 就会 没有
class Laogou:
def __init__(self, name):
# 特殊方法,如果遇到 类名(),该方法就会自动执行.其中的self参数实际上是类的对象obj,系统会自动给你传进去,所以不用管.该方法目的是进行数据初始化
self.n1 = name # 把传进的参数赋值给n1
# 其中__init__方法相当于是把数据打包放进obj对象中,这样当你需要调用时可以直接在obj中找,又因为obj就是self,因此也可以说是直接去self中找就行.
obj = Laogou(‘老狗‘) # 出现 类名(),__init__函数会自动执行,则‘老狗‘就会被当做参数传进去赋值给n1
‘‘‘面向对象什么时候写?如何写?
方式一: 归类+提取公共值 (归类:例如把人归为一类,狗归为一类,也即有多种共同属性的某一事物. 公共值:该类所有成员都会有的属性,如人类会说话,狗
会叫,则可以把说话作为一项属性提取出来作为人这一类的共同属性,把狗叫这一项属性提取出来作为狗这一类的共同属性.
方式二: 在指定类中编写和当前代码相关的所有代码+提取公共值
‘‘‘
‘‘‘面向对象的三大特性: 封装/继承/多态
封装:
将相关功能封装到一个类中:
class Message:
def email(self):pass
def msg(self):pass
def wechat(self):pass
将发送文件,接收文件,读取文件等功能都放在Message的类中.
将数据封装在一个对象中(需借用构造方法):
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
obj = Person(‘孙福来‘, 18, ‘女‘)
‘‘‘
‘‘‘
继承:
class Base: # 父类,基类
def f1:pass
class Foo(Base): #子类,派生类
def f2:pass
原则:先在自己的类中找,没有再去父类中找相关方法或属性
为什么要有继承:主要是为了方法的复用,提高代码的重用性.当有两个类都有一个相同的方法时,就可以把这个方法单独的拿出来,放进一个新类中,再让这两个类都继承该类即可.
方法一:
class Foo:
def f1(self):pass
def f2(self):pass
class Bar:
def f1(self):pass
def f3(self):pass
方法二:
class Base:
def f1(self):pass
class Foo(Base):
def f2(self):pass
class Bar(Base):
def f3(self):pass
方法二把Foo与Bar类中拥有的共同方法f1,单独拿出来放进了一个类,然后再让Foo与Bar继承该类,实现了方法的复用.
多继承:在python中可以实现一个子类继承多个父类,查找时也是先从离自己最近的父类找起(从左向右,左边的父类更亲)
‘‘‘
‘‘‘
多态:
‘‘‘
标签:style 读取文件 同方 方式 参数 python base 就会 没有
原文地址:https://www.cnblogs.com/gongteng/p/13543474.html