16.笨方法学python 习题42

习题 42: 对象、类、以及从属关系

从整个计算机科学的角度来说,对象是对客观事物的抽象,类是对对象的抽象,大类是对小类的抽象。类和对象都是一种抽象的数据类型。

对象(Object):是指在应用问题中出现的各种实体、事件和规格说明等,它是由一组属性和在这组值上的一组服务(这里的服务指的是操作,就是我们写在类里的函数所提供的功能)构成的,其中属性值确定了对象的状态。

类(Class):把具有相同属性和服务的对象归到同一类,而把一个类中的的每一个对象称为该类的一个实例(Instance),它们具有相同的服务。

继承:面向对象方法最有特色的方面。

继承性(Inheritance)是指,在某种情况下,一个类会有“子类”。子类比原本的类(称为父类)要更加具体化、定制化。

在书中,作者举了鱼和泥鳅以及小方的例子,鱼是一个类,泥鳅也是一个类,小方是泥鳅的实例(对象),泥鳅是鱼的实例(或者更准确的说是子类)。

贴代码:标明它是“is-a”还是“has-a”的关系,并讲明白这个关系是什么,记住,“是啥”指的是鱼和泥鳅的关系,而“有啥”指的是泥鳅和鳃的关系。

## Animal is-a object class(yes, sort of confusing) look at the extra credit

class Animal(object):
    pass

## Dog is-a Animal class 
class Dog(Animal):

    def __init__(self, name):
        ## Dog has-a name 
        self.name = name

## Cat is-a Animal class
class Cat(Animal):

    def __init__(self, name):
        ## Cat has-a name 
        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值