zoukankan      html  css  js  c++  java
  • python 父类方法中使用不同的子类中的不同类对象

     1 # coding:utf-8
     2 
     3 
     4 class Animal(object):
     5     def __init__(self):
     6         self._name = None
     7         self._f = None
     8 
     9     def eat(self):
    10         print("%s吃%s" % (self._name, self._f().food()))
    11 
    12 
    13 class Dog(Animal):
    14     def __init__(self):
    15         Animal.__init__(self)
    16         self._f = DogFood
    17         self._name = ""
    18 
    19 
    20 class DogFood():
    21     def food(self):
    22         return "狗粮"
    23 
    24 
    25 class Cat(Animal):
    26     def __init__(self):
    27         Animal.__init__(self)
    28         self._name = ""
    29         self._f = CatFood
    30 
    31 
    32 class CatFood():
    33     def food(self):
    34         return "猫粮"
    35 
    36 
    37 dog = Dog()
    38 dog.eat()
    39 cat = Cat()
    40 cat.eat()
    View Code

    狗吃狗粮
    猫吃猫粮

     1 # coding:utf-8
     2 
     3 
     4 class CatFood():
     5     def food(self, food_name):
     6         self.food_name = food_name
     7 
     8 cf = CatFood
     9 
    10 cf1 = CatFood()
    11 cf1.food("")
    12 cf2 = CatFood()
    13 cf2.food("")
    14 
    15 print(cf1.food_name)
    16 print(cf2.food_name)
    View Code


     1 # coding:utf-8
     2 
     3 
     4 class CatFood():
     5     def food(self, food_name):
     6         self.food_name = food_name
     7 
     8 cf = CatFood
     9 
    10 cf1 = CatFood()
    11 cf1.food("")
    12 cf2 = CatFood()
    13 cf2.food("")
    14 
    15 print(CatFood)
    16 print(cf)
    17 print(cf1)
    View Code

    <class '__main__.CatFood'>
    <class '__main__.CatFood'>
    <__main__.CatFood object at 0x000000000279B320>

    cf CatFood 是类对象

    cf1是实例对象

     

  • 相关阅读:
    oracle查看所有角色
    jQuery 异步提交表单实例解析
    oracle查看用户系统权限
    js中日期操作大全
    oracle 查询用户下所有表
    JS语法字典
    JS定时器例子讲解
    开源软件
    rpm的使用
    lvs+keepalived和haproxy+heartbeat区别
  • 原文地址:https://www.cnblogs.com/cfpl/p/12037419.html
Copyright © 2011-2022 走看看