day 1类 对象 属性 方法
1. 解决吃啤酒鸭的问题
- 第一种方式(面向过程):
- 1)养鸭子
- 2)鸭子长成
- 3)杀
- 4)作料
- 5)烹饪
- 6)吃
- 7)卒
- 第二种方式(面向对象):
- 1)找个卖啤酒鸭的人
- 2)给钱 交易
- 3)吃
- 4)胖6斤
2.类和对象
对象:具体的东西
类:看不见摸不着的,只是概念
3. 类的构成
类(Class) 由3个部分构成
- 类的名称:类名
- 类的属性:一组数据 (基本信息)
- 类的方法:允许对进行操作的方法 (行为) (功能) f.open() f.read() f.close()
4.定义一个类
- #定义一个类
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def cat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
5.创建一个对象
- #定义一个类
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def cat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
- #创建一个对象
- Tom = Cat()
6.调用对象的方法
- #定义一个类
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def eat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
- #创建一个对象
- tom = Cat()
- #调用方法
- tom.eat()
- tom.run()
7.给对象添加属性
- #定义一个类
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def eat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
- #创建一个对象
- tom = Cat()
- #调用tom指向的对象中的 方法
- tom.eat()
- tom.run()
- tom.name = "汤姆"
- tom.age = 18
8.获取对象的属性
- ######33 第一种
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def eat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
- #创建一个对象
- tom = Cat()
- #调用tom指向的对象中的 方法
- tom.eat()
- tom.run()
- #给tom指向的对象添加2个属性
- tom.name = "汤姆"
- tom.age = 18
- #第1种 获取属性
- print("%s的年龄是%d"%(tom.name,tom.age))
- ######## 第二种
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def eat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
- #第二种 获取对象的属性
- def instrduce(self):
- print("%s的年龄是%d"%(tom.name,tom.age))
- #创建一个对象
- tom = Cat()
- #调用tom指向的对象中的 方法
- tom.eat()
- tom.run()
- #给tom指向的对象添加2个属性
- tom.name = "汤姆"
- tom.age = 18
- #第1种 获取属性
- #print("%s的年龄是%d"%(tom.name,tom.age))
- tom.instrduce()
9.创建多个对象
1)版本1:
- #1.类名
- class Cat():
- #2.类的属性
- #3.类的方法
- def eat(self):
- print("我在吃东西。。。")
- def run(self):
- print("我在跑步")
- #第二种 获取对象的属性
- def instroduce(self):
- print("%s的年龄是%d"%(tom.name,tom.age))
- #创建一个对象
- tom = Cat()
- #调用tom指向的对象中的 方法
- tom.eat()
- tom.run()
- #给tom指向的对象添加2个属性
- tom.name = "汤姆"
- tom.age = 18
- #第1种 获取属性
- #print("%s的年龄是%d"%(tom.name,tom.age))
- tom.instroduce()
- lanmao = Cat()
- lanmao.name = "蓝猫"
- lanmao.age = 13
- lanmao.instroduce()
day 1类 对象 属性 方法的更多相关文章
- python添加、修改、删除、访问类对象属性的2种方法
1.直接添加.修改.删除.访问类对象属性 class Employee (object): empCount = 0 def __init__(self, name, salary) : self.n ...
- Python的高级特性8:你真的了解类,对象,实例,方法吗
Python的高级特性1-7系列是本人从Python2过渡3时写下的一些个人见解(不敢说一定对),接下来的系列主要会以类级为主. 类,对象,实例,方法是几个面向对象的几个基本概念,其实我觉得很多人并不 ...
- Method Resolve Order (MRO) - 类对象属性的解析顺序
Method Resolve Order (MRO) - 类对象属性的解析顺序 Python 支持多重继承, 此时就需要解决按照何种顺序来解析属性的问题.类的继承关系在一个特殊的类属性中指定(__mr ...
- Delphi中TStringList类常用属性方法详解
TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...
- java 获取实体类对象属性值的方法
在java中我们要获得实体类对象的属性,一般情况是将实体类中的属性私有化,然后再对外提供get()与set()方法,然后再获取实体类对象的属性的时候先把对象new出来,再用变量名.get()的方法得到 ...
- C#-类 字段 属性 方法 特性
方法的签名 包括参数个数.参数类型.方法返回值 base和this关键字 1.使用base关键字,就可以使用父类中的字段.属性.方法 2.一旦父类中存在有参数的构造函数,那么子类就必须使用base来覆 ...
- python类对象属性查找原理
class Foo(object): def __init__(self): # 这是一个对象属性 self.obj_pro = 12 # 这是一类属性 c_pro = 11 # 这是一个静态方法 @ ...
- object-c计划tips-添加到类对象属性
这个问题从网络包的内容,由于保密问题,我刚才所描述我的业余的想法. 基本的想法: 网络请求,我们应该能够使用基类BaseNetWork, 然后由派生类继承BaseNetWork,并实现一些特殊的方法. ...
- VBA学习笔记(1)----VBA对象属性方法
'VBA对象 'VBA中的对象其实就是我们操作的具有方法.属性的excel中支持的对象 'Excel中的几个常用对象表示方法 '1.工作簿 ' Workbooks 代表工作簿集合,所有的工作簿,Wor ...
随机推荐
- 3、Dubbo-环境搭建
官方推荐使用 Zookeeper 注册中心 3.1).[windows]-安装zookeeper 开发中均在Linux中安装!!! 1.下载zookeeper 网址 https://archive.a ...
- Apollo GPS调试笔记
前言:在Apollo美研团队的支持下,最近完成了Apollo推荐的Novatel PP7与我们的基站调试,在这里对Apollo的笔记做一个补充,希望以后的开发者不用在踩我们踩过的坑. 在自己调导航(h ...
- disconf实践(一)Ubuntu16.04部署disconf
在企业中,随着公司业务的扩张,用户量的增大,单一节点应用无法支撑正常的业务逻辑,比较常见的现象是访问速度变慢,甚至超时,严重时可能会造成系统宕机.为了尽量减少宕机的风险,单一节点系统需要进行水平扩展, ...
- Jmeter--thrift接口压测,调用jar包失败报错:java.lang.NoSuchMethodError:
调用thrift接口压测的jar包,出现了错误:java.lang.NoSuchMethodError: 错误可能的原因: 有这个类,该类真的没有这个方法 有这个类,而且有好几个,他们之间发生了冲突 ...
- 什么是工厂函数?Python 中工厂函数怎么理解?(转)
所谓工厂函数就是指这些内建函数都是类对象(实际上是类), 当你调用它们时,实际上是创建了一个类实例. type():查看类型
- linux内核追踪(trace)(QEMU+gdb)
1.引言 Linux内核是一个很大的模块,如果只是看源码有时会难以理解Linux内核的一些代码设计情况,如果可以结合Linux内核运行同时阅读源码再好不过,本文大致介绍Linux内核追踪方式,采用工具 ...
- Mysql查询正在运行的事务
查询 正在执行的事务:SELECT * FROM information_schema.INNODB_TRX 根据这个事务的线程ID(trx_mysql_thread_id): 可以使用mysql命令 ...
- Java导包后在测试类中执行正确但在Servlet中执行错误报ClassNotFoundException或者ClassDefNotFoundException解决办法
将原来导的包remove from build path,并复制到Web-root下的lib目录中,再add to build path,
- git私服
目录 安装 git 在服务器上部署 Git 1.在服务器上创建一个新用户 2.创建一个git仓库 3.在服务器端打开RSA认证(重要) 4.在客户端创建SSH key 5.把步骤4生成的公钥导入服务器 ...
- iOS 后台持续定位详解(支持ISO9.0以上)
iOS 后台持续定位详解(支持ISO9.0以上) #import <CoreLocation/CoreLocation.h>并实现CLLocationManagerDelegate 代理, ...