class person:
name = 'xxp'
age = 18
def intro(self):
print('my name is ' + self.name)
p = person()
'''
pay attention to distinguish between p.intro and p.intro()
'''
p.intro()
class person:
'''
why use __init__(): because we could put parameter into this class
'''
def __init__(self, name):
self.name = name
def intro(self):
print('my name is ' + self.name)
p = person('Alice')
p.intro()
class person:
def __init__(self, name):
self.name = name
def intro(self):
print('my name is ' + self.name)
class dog(person):
'''
inherit the __init__() method
'''
def intro(self):
print('Wang wang wang ... my name is ' + self.name)
p = dog('Alice')
p.intro()
class person:
def __init__(self, name):
self.name = name
def intro(self):
print('my name is ' + self.name)
class dog(person):
def intro(self):
print('Wang wang wang ... my name is ' + self.name)
class cat(person):
def intro(self):
print('Miao miao miao ... my name is ' + self.name)
def hello(person):
person.intro()
'''
多态 polymorphism
'''
hello(person('xxp'))
hello(dog('xxp'))
hello(cat('xxp'))
class person:
def __init__(self, name):
self.name = name
def intro(self):
print('my name is ' + self.name)
class dog(person):
def intro(self):
print('Wang wang wang ...')
'''
use super() to call parent's method
'''
super().intro()
p = dog('xxp')
p.intro()
class A:
'''
no need to put in 'self' parameter
'''
@staticmethod
def f(x):
print(x)
'''
no need to instantiate(no need to use a object, but a class)
'''
A.f(1)
A().f(1)
class A:
'''
the first parameter 'cls' represents this class
'''
@classmethod
def f(cls, x):
print(x)
'''
no need to instantiate(no need to use a object, but a class)
'''
A.f(1)
A().f(1)
Original: https://www.cnblogs.com/daxiangcai/p/16859837.html
Author: 大湘菜
Title: python 类
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/714051/
转载文章受原作者版权保护。转载请注明原作者出处!