类和对象

类

创建类

#创建一个Person类
class Person:
    #定义setName方法
    def setName(self,name):
        self.name=name
    #定义getName方法
    def getName(self):
        return self.name
    # 定义greet方法
    def greet(self):
        print("hello,I'm {name}.".format(name=self.name))
#创建person1对象
person1=Person()
#创建person2对象
person2=Person()
#调用person1对象的setName方法
person1.setName("Bill Gates")
#调用person2对象的name属性
person2.name="Bill Clinton"
#调用person1对象的getName方法
print(person1.getName())
#调用person1对象的greet方法
person1.greet()
#调用person2对象的属性
print(person2.name)
#调用person2对象的greet方法(另一种调用方法的方式)
Person.greet(person2)

E:pythonpython.exe E:/progect/untitled1/untitled1/urls.py
Bill Gates
hello,I'm Bill Gates.
Bill Clinton
hello,I'm Bill Clinton.



类的继承

与其他面向对象语言一样,python也支持类的继承,所谓类的继承,就是指一个类(子类)从另一个类(父类)中获得了所有的成员。

父类的成员可以在子类中使用,就像子类本身的成员一样


实例

#父类
class ParentClass:
    def method1(self):
        print("method1")
#子类
class ChildClass(ParentClass):
    def method2(self):
        print("method2")

child=ChildClass()
child.method1()
child.method2()

E:pythonpython.exe E:/progect/untitled1/untitled1/urls.py
method1
method2



多继承


要想为某一个类指定多个父类,需要在类名后面的圆括号中设置。多个父类名之间用逗号(,)分隔

class Myclass(MyParent1,MyParent2,MyParent3):
    pass   # 如果类中没有任何代码,必须加上一条pass,否则会编译出错



类的重写

当B类继承A类时,B类就会拥有A类的所有成员变量和方法,如果B类中的方法名与A类中的方法名相同,那么B类中同方法名就会重写A类中同方法名。
原文地址:https://www.cnblogs.com/effortsing/p/10387847.html