Python 100天练习 — Day 8 面向对象编程基础

本文以GitHub上100天python从新手到大师为素材,规划为约100天的练习,每次的学习和总结均发在这里。有错误的地方还请朋友们指正。

什么是面向对象编程

根据我粗浅的理解,面向对象编程"把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(inheritance)实现类的特化(specialization)和泛化(generalization),通过多态(polymorphism)实现基于对象类型的动态分派。"

封装就是将一切实现的细节隐蔽起来,只给对方一个接口来使用。继承是指我们可以继承类的统一特性,但每个继承下来的新对象都不一样,会有自己的特性,这就是多态。

类和对象

类是对象们的统一,对象是类的具体化。
例如在动物中,狗是类的名字,而柯基、哈士奇就是狗类下的具体例子。当我们把柯基、哈士奇里四足、耳朵形状、叫声等特征行为概括起来时候,狗的类就建立起来了。

创建和使用对象

使用关键字 class 创建类,在里面可以通过属性赋值和函数来赋予类的内容。可以通过下面例子来说明:

其中 init 是特别的方法,用于初始化类的内容,并且我们通过self.name来获取了学生的名字,并以此类推。

class Student(object):
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def study(self, course_name):
        print("%s is studying %s" % (self.name, course_name))

    def watch_movie(self):
        if self.age < 18:
            print("%s 在看熊大" % self.name)
        else:
            print("%s 在看成人才可以看的"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值