Python面向对象

总结

类的定义

很久以前,语言都是面向过程的,经过计算机科学家的探索,出现了面向对象。面向对象可以解释生活中很多东西。比如人,人就是个对象,有参数,比如器官,身高啥的,有方法,比如跑步,学习等。不扯那么多了。
对象就是类,在python中用class定义类。类里面有两大部分,一部分是属性,一部分是方法。比如,定义一个人对象。这个人的属性就是身高,体重,方法就是说话。

#定义人
class Person:
    #定义属性
    height=0
    weight=0

    #构造函数
    def __init__(self,h,w):
        self.height=h
        self.weight=w
    
    #定义方法
    def speak(self):
        print('I can speak!')

上面的代码就定义了一个Person类.

继承

定义了类之后,就要牵扯到继承这个事。说白了就是儿子继承父亲的家产(属性,方法),但儿子也可对属性进行添加,方法进行重写或增加等。
python继承很简单,格式是这样的

class Son(Parent)

通过这样的定义就有了一个继承类son,他会继承parent的everything。写段代码例子。

class Parent:
    money=0
    def __init__(self,m):
        self.money=m
        
    def makeMoney(self):
        print('i can make money!')

class Son(Parent):
    height=0
    def __init__(self,m,h):
        Parent.__init__(self,m)
        self.height=h
        
    def makeMoney(self):
        print('So did i!')
son=Son(20,1)
print(son.makeMoney())

继承后你可能想调用父类的方法,可以用super(Son,son).makeMoney()调用。
上面是单继承的例子,多继承类似,在此就不再赘述

私有变量

这个东西只能在类里使用,不能通过实例化对象调用。
定义的时候在变量名字前加__

posted @ 2020-08-02 18:43  不摸鱼  阅读(99)  评论(0编辑  收藏  举报