面向对象

面向对象的三个基本特征:继承、封装和多态
面向对象语法

什么是抽象?
类-抽象的 角色-具体的
我们创建类的时候会给这个类创建很多抽象属性和名字
具体值都是创建对象(角色)过程中体现出来的

格式:
class 类名: #类名首字母大写
def 函数名(self): #函数名一般小写字母开头
pass

对象=类名() #类名() 得到对象
对象.函数名() #对象.方法名() 进行调用


用面向对象写人狗大战
class Person:  # 声明一个类
    def __init__(self,name,hp,ad,sex,job):
        '初始化函数'
        self.name=name
        self.hp=hp
        self.ad=ad
        self.sex=sex
        self.job=job

    def attack(self,dog):  # 这个类独有的动作
        '人打狗'
        dog.hp = dog.hp - self.ad
        print('%s攻击了%s,%s掉了%s的血,还剩%s血'%(
            self.name,
            dog.name,
            dog.name,
            self.ad,
            dog.hp))


class Dog:  #声明一个类
    def __init__(self,name,kind,hp,ad):
        self.name=name
        self.kind=kind
        self.hp=hp
        self.ad=ad

    def bite(self,person):
        person.hp = person.hp - self.ad
        print('%s攻击了%s,%s掉了%s的血,还剩%s血' % (
            self.name,
            person.name,
            person.name,
            self.ad,
            person.hp))

zhangsan=Person('张三',200,40,'','射手')
lisi=Person('李四',300,30,'','战士')

tg=Dog('天狗','拉布拉多',1000,50)
jq=Dog('警犬','藏獒',800,60)
zhangsan.attack(tg)
jq.bite(lisi)

 




posted @ 2022-07-02 14:39  爱coding的果妈  阅读(29)  评论(0)    收藏  举报