python面向对象

类是具有一系列相同特征和行为的事物的统称,抽象的,不能直接使用的

属性是特征,方法是行为

类的三要素:类名,属性,方法

类相当于图纸(模板),负责创建具体事物

类只有一个,对象可以有多个

对象是由类创建出来的一个具体存在,可以直接使用

类中定义了哪些属性和方法,由该类创建出来的对象中就有哪些属性和方法

在开发中,先有类,才有对象

def demo():
    """这是一个试运行函数"""
    print("hello python")

print(dir(demo))
print(demo.__doc__)

 

class Cat:
    def eat(self):
        print("小猫爱吃鱼")

    def drink(self):
        print("小猫爱喝水")

# 创建猫对象
tom=Cat()

# 对象来调用方法,在对象后面加点
tom.drink()
tom.eat()

 

 

class Cat:
    def eat(self):
        print("小猫爱吃鱼")

    def drink(self):
        print("小猫爱喝水")

# 创建猫对象
tom=Cat()
#可以使用 .属性名  利用赋值来增加属性
tom.name="Tom"

class Cat:
    def eat(self):
        # 哪一个对象调用的方法,self就是该对象的引用
        print("%s爱吃鱼"  %self.name)

    def drink(self):
        print("小猫爱喝水")

# 创建猫对象
tom=Cat()
#可以使用 .属性名  利用赋值来增加属性
tom.name="Tom"

# 对象来调用方法,在对象后面加点
tom.drink()
tom.eat()

# 再创建一个猫对象
lazy_cat=Cat()

lazy_cat.name="大懒猫"
lazy_cat.eat()
lazy_cat.drink()

class Cat:
    def __init__(self):
        print("这是一个初始化方法")

# 使用类名创建对象时,会自动调用初始化方法  __init__
tom=Cat()

 

 

class Cat:
    def __init__(self,new_name):
        print("这是一个初始化方法")
        self.name=new_name
        # self.属性名=属性初始值
        # self.name="Tom"

    def __del__(self):
        print("%s我去了" %self.name)

    # str方法必须返回一个字符串
    def  __str__(self):
        return "我是小猫【%s】"  %self.name

# 使用类名创建对象时,会自动调用初始化方法  __init__
tom=Cat("Tom")
print(tom)

 

posted @ 2019-08-28 15:50  王小二啊  阅读(131)  评论(0编辑  收藏  举报