面向对象思想初级应用实例

面向对象是一种编程思想,是一种通过多个对象互相协作完成功能处理流程的编程思路,在核心处理过程中,又主要区分为类的声明定义、对象的创建使用、面向对象拥有的特征【三大特征:封装、继承、多态】

       封装:体现了对象对于敏感数据的保护特征

       继承:体现了代码的复用和功能的扩展

       多态:体现了不同操作环境中代码的多样性【程序的健壮性】

 思路:大量的程序开发、大量的问题解决-> 处理问题的固定步骤-> 成熟的处理方式-> 思路

'''
面向对象:入门程序
    认识什么是类型和对象
'''


class HelloWord:
    '''
    这是定义一个类型,class为定义类型的关键字
    '''
    
    def say(self):
        '''
        定义一个打印 hellow world的函数
    
        '''
        print("hello world,面向对象(oo:Object Oriented)")


#创建该类型的一个具体的对象
hw = HelloWorld()
#调用对象的行为
hw.say()

该程序展示面向对象的初级应用,创建类型,在类型中可以存在多个对象,而类型中的对象之间也可以相互调用执行相关功能,且类型之间也可以互相作用,类似于生活中社会群体中相互关联共同作用的相关活动。

下面展示两个现实生活中的案例

案例1:给宠物看病的案例

'''
给宠物看病这一系列动作
     首先分析:该动作活动中存在的对象有:宠物,宠物医院
     然后判断:对象分为两大类,可以创建两个类型
     然后操作:依据分析思路创建代码
     最后调试:运行调试
'''

class Pet:
   '''
   创建宠物类型
   '''
   
   def __init__(self,name,health):
       '''
       定义宠物属性
       '''
       self.name = name

   def recovery(self):
       '''
       定义宠物康复函数
       '''
       self.health += 5
       print(self.name,"正在恢复中...")

class PetHospital:
    '''
    创建宠物医院属性
    '''

    def __init__(self,name):
        '''
        定义宠物医院属性
        '''
        self.name = name

    def cure(self):
        '''
        定义医院治疗宠物函数
        '''

        #判断对象是否为宠物,其中第一个参数pet为对象,第二个参数Pet为提供给该段代码的数据
        if isinstance(pet,Pet)
            #加上一个while循环,保证宠物康复
            while pet.health <=65:   
                pet.recovery()
                
            else:
                 print(pet.name,"已将康复了...")
        else:
             print("本医院仅提供宠物医疗服务....")

class person:
    '''
    定义人的类型
    '''
    
    def __init__(self,name,health):
        '''
        定义人的属性
        '''
        self.name = name
        self.health = health

     def recovery(self):
       '''
       定义人类康复函数
       '''
       self.health += 8
       print(self.name,"正在恢复中...")

#创建宠物对象
cat = Pet("小猫",25)
dog = Pet("二哈",50)

#创建人类对象
person = person("白浩",50)

#创建一个宠物医院
hp = PetHospital("天使之家")

#执行医院治疗函数
hp.cure(cat)
hp.cure(dog)
hp.cure(person)

:案例2:

该实例展示了“老张开车去东北”这一生活过程

'''
老张开车去东北
    运用面向对象思想分析,设计,编码,测试
    对象可分为:老张(人),车(交通工具),东北(地区)
'''

class Person:
    '''
    定义人的类型
    '''

    def __init__(self,name):
        '''
        定义人的属性
        '''
        self.name =name 

    def drive(self,vehicle,area):
        '''
        定义人的驾驶行为
        '''
        print(self.name,"准备发动交通工具...")

        #调用交通工具类型中的车辆运动函数
        vehicle.trivel(area)

class Vehicle:
    '''
    定义交通工具的类型
    '''
    
    def __init__(self,name):
        '''
        定义交通工具属性
        '''
        self.name = name 

    def trivel(self,aera):
        '''
        交通工具运动的函数
        '''
        
        print(self.name,"正在行驶>>>>>前往目的地为:",area)

class Area:
    '''
    定义地区类型
    '''
    
    def __init__(self,name):
        '''
        定义地区属性
        '''
        self.name = name

#创建对应的对象
x1 = Person("陆雪琪")
y1 = Vehicle("奔驰C600")
z1 = Area("黑龙江")

#创建第二个对象
x2 = Person("张小凡")
y2 = Vehicle("兰博基尼")
z2 = Area("沈阳")

#调用执行人的驾驶行为函数
x1.drive(y1,z1)

x2.drive(y2,z2)

#x1与x2中的数据互相调用也可以运行,非常接近于现实生活习惯

x1.drive(y2,z2)

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值