《Python》 面向对象初识(组合)】的更多相关文章

面向对象的组合用法 一个类中以另一个类的对象作为数据属性(一个类中引用另一个类的对象)一种 "有" 的关系: 比如:定义 1个人类 & 1个武器类 然后 张三 有 枪 李四 有 刀 from math import pi class Circle: ''' 定义了一个圆形类: 提供计算面积(area)和周长(perimeter)的方法 ''' def __init__(self,radius): self.radius = radius def area(self): retu…
今日内容: 1.组合 2.菱形继承 3.多态与多态性 昨天内容重点回顾: 1)调用也叫实例化:发生了2件事  1.创造空对象  2.触发对象下的__init__方法,然后将p连同参数一同传给init 2)绑定关系  1.类的调用就是普通函数  2.大多数给对象调用的,绑定给对象用的    绑定给谁就应该由谁来调用,谁来调用就会将谁当做第一个参数自动传入 精髓:对象不仅是一系列数据(自己独有的+与其他对象共有的),还包含专门操作该数据的方法 1.组合 1.什么是组合    组合就是一个类的对象具备…
一.组合二.封装三.property装饰器四.多态 一.组合 ''' 1. 什么是组合 一个对象的属性是来自于另外一个类的对象,称之为组合 2. 为何用组合 组合也是用来解决类与类代码冗余的问题 3. 如何用组合 ''' # class Foo: # aaa=1111 # def __init__(self,x,y): # self.x=x # self.y=y # # def func1(self): # print('Foo内的功能') # # # class Bar: # bbb=2222…
一.分类 1.面向过程 2.面向函数 3.面向对象 二.类和对象 1.宏关 类是抽象的,对象是具体的 2.实例化 类->对象 3.类的作用 1)实例化成对象 实例化的过程,创建self对象,调用__init__()方法,获取返回值 2)调用静态属性 4.对象的作用 1)调用函数 2)查看属性 5.补充 1)类和属性都有__dict__ 2)self可以看成字典(不严谨) 3)初始化的__init__和方法的形参必须有self 4)类的名字首字母大写 5)类的关键字class # 计算长方形的周长…
组合 组合举例组合就是多个类,或者若干类联合起来完成一个任务下面举例两个类联合起来完成一个任务为了降低代码的耦合度,我们一般不会在一个类里实例化另外一个类,都是将一个类在外面实例化后传参到另外一个来这样就带来了一个问题,如果有很多类相互继承,我们就需要在外面实例化很多类最好能动态实例化类并传参(依赖注入),后面讲到 组合举例# 组合就是多个类,或者若干类联合起来完成一个任务# 下面举例两个类联合起来完成一个任务# 为了降低代码的耦合度,我们一般不会在一个类里实例化另外一个类,都是将一个类在外面实…
# 组合: 给一个类的对象封装一个属性,这个属性是另一个类的对象. class GameRole: def __init__(self, name, ad, hp): self.name = name self.ad = ad self.hp = hp def attack(self, p): p.hp = p.hp - self.ad print('%s 攻击 %s,%s 掉了%s血,还剩%s血' % (self.name, p.name, p.name, self.ad, p.hp)) de…
一.面向对象编程 类 : 具有相同属性和技能的一类事物 对象: 就是对一个类的具体的描述 实例化:类——>对象的过程 使用面向对象的好处: 使得代码之间的角色关系更加明确 增强了代码的可扩展性 规范了对象的属性和技能 结构上, 面向对象可以分为两部分:属性和方法 属性又叫静态属性.静态字段.静态变量 方法又叫动态属性.函数 class A: name = 'hello' #静态属性.静态字段.静态变量 def fun(self): #动态属性.方法.函数 pass 新建一个类,类名的首字母最好是…
一.面向对象(组合): 定义:给一个类的对象封装一个属性,这个属性是另一个类的对象. 意义:让类的对象与另一个类的对象产生关系,类与类之间产生关系. 人物使用武器攻击另一个人物: class Game_role: def __init__(self,name,ad,hp): self.name = name self.ad = ad self.hp = hp def attack(self,role): role.hp = role.hp - self.ad print('%s赤手空拳攻击了%s…
面向对象初识到进阶 # 面向对象结构: # class 类名: # def __init__(self,参数1,参数2): # self.对象的属性1 = 参数1 # self.对象的属性2 = 参数2 # # def 方法名(self):pass # # def 方法名2(self):pass # # 对象名 = 类名(1,2) #对象就是实例,代表一个具体的东西 # #类名() : 类名+括号就是实例化一个类,相当于调用了__init__方法 # #括号里传参数,参数不需要传self,其他与…
一.初识python面向对象: class Person: #使用class关键字定义一个类 age=0 #类变量(静态变量) def eat(self,food): #定义一个方法 self.age=5 #self是实例本身,self.age是实例变量 print("I will eat %s" %food) xiaofan=Person() #实例化,生成对象xiaofanprint(xiaofan.age) #调用对象方法,因为还没有调用eat方法,则使用类方法的值xiaofan…