class Animal(object):
def __init__(self, name, num):
self.name = name
self.num = num
def printNum(self):
print("%s有%s个" % (self.name, self.num))
dog = Animal("哈士奇", 99)
pig = Animal("佩奇", 199)
dog.printNum() ---------------> 哈士奇有99个
pig.printNum() ----------------> 佩奇有199个
- 类名通常用大写字母开头
- 通过定义init方法绑定类属性
- 类主要用于封装实例属性和方法,类外部可以直接调用printNum方法,不用考虑实例的name,num属性值
- object是父类,代表继承关系
私有变量
class Animal(object):
def __init__(self, name, num):
self.__name = name
self.__num = num
def get_name(self):
return self.__name
def set_name(self, name):
self.__name = name
dog = Animal("哈士奇", 99)
dog.set_name("阿拉斯加")
print("%s" % dog.get_name()) -------------> 阿拉斯加
- 属性名前加双下划线表示私有变量,外部不可以直接访问
- 通过写get_name和set_name,实现外部对类属性的读写
- 这样可以检测外部传入值,让程序更加可靠