# -*- coding:utf-8 -*-
# 类
class Human(object):
    def __init__(self, name):  # 相当于构造方法
        self.name = name
        # print name
Human_a = Human("alan")
class human(object):
    pass
human_b = human()
human_b.name = "alan"
# print human_b.name
human_c = human()
human_c.name = "bob"
# print human_c.name
class human1(object):  # 类中的方法
    def __init__(self, name):
        self.name = name
   # def wolk(self):
        # print self.name + " is walking"
human_d = human1("alan")
human_d.wolk()
class human2(object):
    def __init__(self, name):
        self.__name = name
    # def wolk(self):
        # print self.__name + " is walking in human2"
    def get_name(self):  # get set 方法 和java等一样
        return self.__name
    def set_name(self, name):
        self.__name = name
human_d = human2("alan")
# print human_d.get_name()
# print human_d.__name          # 报错 访问不到
human_d.set_name("bob")
human_d.wolk()
# 继承 & 多态
class man(Human):  # 继承 & 增加方法
    def __init__(self, name, hasWife):
        # self.__name = name
        super(man, self).__init__(name)  # 可以用super调用父类的构造函数
        self.__hasWife = hasWife
    # def smoke(self):
        # print "A man maybe smoke"
   #  def drink(self):
        # print "A man maybe drink"
manA = man("bob", False)
manA.drink()
manA.smoke()
分类: Python

0 条评论

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注