美文网首页
Python类和对象(面向对象)

Python类和对象(面向对象)

作者: 静静地就好 | 来源:发表于2020-03-15 23:18 被阅读0次

    1、类:class创建类。类是用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

    2、self:代表类的实例,self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

    3、类的构造方法/初始化方法,当创建了类的实例就会调用__init__方法,self必须有。

    4、方法:类中的函数,需要self。

    5、实例化:创建一个类的实例,类的具体对象。可以调用类中的方法。

    6、继承:一个派生类继承基类的字段和方法,实现代码重用。

    7、方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。

    8、类的私有属性:两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问,只能在类内部的方法中使用self.__private_attrs。

    9、类的私有方法:两个下划线开头,声明该方法为私有方法,不能在类的外部调用,只能在类的内部调用self.__private_methods调用。

    class People(object):

    #创建一个People的类

        __age = 18

        #私有变量/私有属性age

        name = 'test'

        #公有变量/公有属性name

        def __init__(self, name):

            self.name = name

        #类的构造方法/初始化方法

        def run(self):

            print('{}在跑步'.format(self.name))

        def __secret(self):

            print('调用私有属性__age:{}'.format(self.__age))

            #调用私有属性

        def test(self):

            self.__secret()

            #调用私有方法

        #run方法

    people = People("tester") 

    print(people.name) #tester.不是test

    #创建一个People对象,实例化

    people.run() #tester在跑步

    #调用People类的run方法

    people.test() #调用私有属性__age:18

    #调用People类的test方法

    class Child(People):

        #Child类继承People类

        def eat(self):

        #子类特有方法

            print("{}饿了总想吃东西".format(self.name))

        def run(self):

            #重写run方法

            print('{}还不会跑步,只能打滚'.format(self.name))

    kid = Child('kid')

    kid.run() #kid还不会跑步,只能打滚

    kid.eat() #kid饿了总想吃东西

    相关文章

      网友评论

          本文标题:Python类和对象(面向对象)

          本文链接:https://www.haomeiwen.com/subject/dtliehtx.html