python 面向对象思想

面向对象的思维方式:解决问题前,应该考虑用谁解决问题,这个谁就是对象

一、python中面向对象有

1.类:描述的是一类事物,比如动物,人类

2.对象:对象就是类的具体化,比如动物包括:狗、猪等,狗和猪就是对象

3.属性:属性是对象可以做到的能力,比如狗可以汪汪叫,汪汪叫就是狗的一个属性

二、面向对象的三大特征

1.封装

将属性和方法封装到一个抽象的类中

2.继承

1)概念:子类拥有父类的所有属性和方法,继承可以实现代码的重复利用,相同的代码不用重复的编写

2)语法:

3)class 子类名(父类名):
        pass

4)继承分为单继承和多继承:

多继承:一个子类可以继承多个父类

语法:class 子类名(父类名1,父类名2,...)

                pass

如果父类之间存在同名的属性或者方法,应避免使用多继承

4)继承具有传递性

例如:定义一个狗的类别,狗拥有跑的属性,再定义一个小花狗的子类,小花狗也可以跑,那么小花狗便可以继承狗的跑的属性,假如我们现在定义一个小胖狗的子类,小胖狗依然可以跑,那么小胖狗可以继承小花狗的属性,其中我们只在父类中定义了跑的属性,在两个子类中只需要继承就可以调用

class Dog:
      def   run(self):

        pass

class XiaoDog(Dog):

        pass

class Xiaopanggou(xiaogou):

        pass

5)当父类中的属性和方法无法满足子类需求时,可以对方法进行重写。比如在父类中定义的属性是小狗慢慢的跑,如果我们不想让小狗慢慢的跑,便可在子类中将属性进行修改,当程序执行时,只会调用子类中重写的方法,不会调用父类中封装的方法

class Dog:

        def run(self):
print("慢慢的跑“)

修改:

class Xiaogou(Dog):
        def run(self):

print("快点跑")

6)私有方法和属性

在方法和属性之前加两个下划线即可

__属性名

特点:类别外部不可查看               

3.多态:不同的子类对象调用相同的父类方法,产生不同的执行结果

一个父亲,多个儿子,龙生九子,各有不同

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值