python 面向对象_1
self
#self 是相当于c++的 this指针 class Ball: def setName(self,name): self.name = name def kick(self): print('我叫%s'%self.name) ball = Ball() ball.setName('足球') ball.kick() ball1 = Ball() ball1.setName('篮球') ball1.kick() class Ball1: def __init__(self,name,id='xxx'):#构造函数,初始化实例对象的时候 会自动调用 self.name = name self.id = id def kick(self): print('我叫%s,我是世界第%s大球'%(self.name,self.id)) b = Ball1('排球','三') b.kick()
抽象类,是一个规范 不能当作普通的类来实例化调用了例如下代码
import abc #抽象类,是一个规范 只能来继承不能实例调用 class Basecar(metaclass=abc.ABCMeta):#这是一个抽象类,只是用来继承的 def __init__(self,uid): self.uid = uid @abc.abstractmethod #如果抽象类里面的函数通过abstractmethod来修饰,那就在子类里必须实现 def run(self): pass class Bmw(Basecar): def run(self):#子类实现了父类的run方法,如果不实现的化 实例调用就会报错 print('run') B = Bmw('uid') B.run()