1. 解决吃啤酒鸭的问题

  1. 第一种方式(面向过程):
  2.  
  3. 1)养鸭子
  4.  
  5. 2)鸭子长成
  6.  
  7. 3)杀
  8.  
  9. 4)作料
  10.  
  11. 5)烹饪
  12.  
  13. 6)吃
  14.  
  15. 7)卒
  1. 第二种方式(面向对象):
  2.  
  3. 1)找个卖啤酒鸭的人
  4.  
  5. 2)给钱 交易
  6.  
  7. 3)吃
  8.  
  9. 4)胖6

2.类和对象

对象:具体的东西

类:看不见摸不着的,只是概念

    

3. 类的构成

  类(Class) 由3个部分构成

  • 类的名称:类名
  • 类的属性:一组数据       (基本信息)
  • 类的方法:允许对进行操作的方法 (行为)    (功能) f.open()    f.read()   f.close()

    

4.定义一个类

  1. #定义一个类
  2.  
  3. #1.类名
  4. class Cat():
  5. #2.类的属性
  6.  
  7. #3.类的方法
  8. def cat(self):
  9. print("我在吃东西。。。")
  10. def run(self):
  11. print("我在跑步")

5.创建一个对象

  1. #定义一个类
  2.  
  3. #1.类名
  4. class Cat():
  5. #2.类的属性
  6.  
  7. #3.类的方法
  8. def cat(self):
  9. print("我在吃东西。。。")
  10. def run(self):
  11. print("我在跑步")
  12.  
  13. #创建一个对象
  14. Tom = Cat()

      

6.调用对象的方法

  1. #定义一个类
  2.  
  3. #1.类名
  4. class Cat():
  5. #2.类的属性
  6.  
  7. #3.类的方法
  8. def eat(self):
  9. print("我在吃东西。。。")
  10. def run(self):
  11. print("我在跑步")
  12.  
  13. #创建一个对象
  14. tom = Cat()
  15.  
  16. #调用方法
  17. tom.eat()
  18.  
  19. tom.run()

    

7.给对象添加属性

  1. #定义一个类
  2.  
  3. #1.类名
  4. class Cat():
  5. #2.类的属性
  6.  
  7. #3.类的方法
  8. def eat(self):
  9. print("我在吃东西。。。")
  10. def run(self):
  11. print("我在跑步")
  12.  
  13. #创建一个对象
  14. tom = Cat()
  15.  
  16. #调用tom指向的对象中的 方法
  17. tom.eat()
  18. tom.run()
  19.  
  20. tom.name = "汤姆"
  21. tom.age = 18

    

8.获取对象的属性

  1. ######33 第一种
  2.  
  3. #1.类名
  4. class Cat():
  5. #2.类的属性
  6.  
  7. #3.类的方法
  8. def eat(self):
  9. print("我在吃东西。。。")
  10. def run(self):
  11. print("我在跑步")
  12.  
  13. #创建一个对象
  14. tom = Cat()
  15.  
  16. #调用tom指向的对象中的 方法
  17. tom.eat()
  18. tom.run()
  19.  
  20. #给tom指向的对象添加2个属性
  21. tom.name = "汤姆"
  22. tom.age = 18
  23.  
  24. #第1种 获取属性
  25. print("%s的年龄是%d"%(tom.name,tom.age))
  1. ######## 第二种
  2.  
  3. #1.类名
  4. class Cat():
  5. #2.类的属性
  6.  
  7. #3.类的方法
  8. def eat(self):
  9. print("我在吃东西。。。")
  10. def run(self):
  11. print("我在跑步")
  12. #第二种 获取对象的属性
  13. def instrduce(self):
  14. print("%s的年龄是%d"%(tom.name,tom.age))
  15.  
  16. #创建一个对象
  17. tom = Cat()
  18.  
  19. #调用tom指向的对象中的 方法
  20. tom.eat()
  21. tom.run()
  22.  
  23. #给tom指向的对象添加2个属性
  24. tom.name = "汤姆"
  25. tom.age = 18
  26.  
  27. #第1种 获取属性
  28. #print("%s的年龄是%d"%(tom.name,tom.age))
  29. tom.instrduce()

    

9.创建多个对象

  1)版本1:

  1. #1.类名
  2. class Cat():
  3. #2.类的属性
  4.  
  5. #3.类的方法
  6. def eat(self):
  7. print("我在吃东西。。。")
  8. def run(self):
  9. print("我在跑步")
  10. #第二种 获取对象的属性
  11. def instroduce(self):
  12. print("%s的年龄是%d"%(tom.name,tom.age))
  13.  
  14. #创建一个对象
  15. tom = Cat()
  16.  
  17. #调用tom指向的对象中的 方法
  18. tom.eat()
  19. tom.run()
  20.  
  21. #给tom指向的对象添加2个属性
  22. tom.name = "汤姆"
  23. tom.age = 18
  24.  
  25. #第1种 获取属性
  26. #print("%s的年龄是%d"%(tom.name,tom.age))
  27. tom.instroduce()
  28.  
  29. lanmao = Cat()
  30. lanmao.name = "蓝猫"
  31. lanmao.age = 13
  32. lanmao.instroduce()

    

      

day 1类 对象 属性 方法的更多相关文章

  1. python添加、修改、删除、访问类对象属性的2种方法

    1.直接添加.修改.删除.访问类对象属性 class Employee (object): empCount = 0 def __init__(self, name, salary) : self.n ...

  2. Python的高级特性8:你真的了解类,对象,实例,方法吗

    Python的高级特性1-7系列是本人从Python2过渡3时写下的一些个人见解(不敢说一定对),接下来的系列主要会以类级为主. 类,对象,实例,方法是几个面向对象的几个基本概念,其实我觉得很多人并不 ...

  3. Method Resolve Order (MRO) - 类对象属性的解析顺序

    Method Resolve Order (MRO) - 类对象属性的解析顺序 Python 支持多重继承, 此时就需要解决按照何种顺序来解析属性的问题.类的继承关系在一个特殊的类属性中指定(__mr ...

  4. Delphi中TStringList类常用属性方法详解

    TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...

  5. java 获取实体类对象属性值的方法

    在java中我们要获得实体类对象的属性,一般情况是将实体类中的属性私有化,然后再对外提供get()与set()方法,然后再获取实体类对象的属性的时候先把对象new出来,再用变量名.get()的方法得到 ...

  6. C#-类 字段 属性 方法 特性

    方法的签名 包括参数个数.参数类型.方法返回值 base和this关键字 1.使用base关键字,就可以使用父类中的字段.属性.方法 2.一旦父类中存在有参数的构造函数,那么子类就必须使用base来覆 ...

  7. python类对象属性查找原理

    class Foo(object): def __init__(self): # 这是一个对象属性 self.obj_pro = 12 # 这是一类属性 c_pro = 11 # 这是一个静态方法 @ ...

  8. object-c计划tips-添加到类对象属性

    这个问题从网络包的内容,由于保密问题,我刚才所描述我的业余的想法. 基本的想法: 网络请求,我们应该能够使用基类BaseNetWork, 然后由派生类继承BaseNetWork,并实现一些特殊的方法. ...

  9. VBA学习笔记(1)----VBA对象属性方法

    'VBA对象 'VBA中的对象其实就是我们操作的具有方法.属性的excel中支持的对象 'Excel中的几个常用对象表示方法 '1.工作簿 ' Workbooks 代表工作簿集合,所有的工作簿,Wor ...

随机推荐

  1. 3、Dubbo-环境搭建

    官方推荐使用 Zookeeper 注册中心 3.1).[windows]-安装zookeeper 开发中均在Linux中安装!!! 1.下载zookeeper 网址 https://archive.a ...

  2. Apollo GPS调试笔记

    前言:在Apollo美研团队的支持下,最近完成了Apollo推荐的Novatel PP7与我们的基站调试,在这里对Apollo的笔记做一个补充,希望以后的开发者不用在踩我们踩过的坑. 在自己调导航(h ...

  3. disconf实践(一)Ubuntu16.04部署disconf

    在企业中,随着公司业务的扩张,用户量的增大,单一节点应用无法支撑正常的业务逻辑,比较常见的现象是访问速度变慢,甚至超时,严重时可能会造成系统宕机.为了尽量减少宕机的风险,单一节点系统需要进行水平扩展, ...

  4. Jmeter--thrift接口压测,调用jar包失败报错:java.lang.NoSuchMethodError:

    调用thrift接口压测的jar包,出现了错误:java.lang.NoSuchMethodError: 错误可能的原因: 有这个类,该类真的没有这个方法 有这个类,而且有好几个,他们之间发生了冲突 ...

  5. 什么是工厂函数?Python 中工厂函数怎么理解?(转)

    所谓工厂函数就是指这些内建函数都是类对象(实际上是类), 当你调用它们时,实际上是创建了一个类实例. type():查看类型

  6. linux内核追踪(trace)(QEMU+gdb)

    1.引言 Linux内核是一个很大的模块,如果只是看源码有时会难以理解Linux内核的一些代码设计情况,如果可以结合Linux内核运行同时阅读源码再好不过,本文大致介绍Linux内核追踪方式,采用工具 ...

  7. Mysql查询正在运行的事务

    查询 正在执行的事务:SELECT * FROM information_schema.INNODB_TRX 根据这个事务的线程ID(trx_mysql_thread_id): 可以使用mysql命令 ...

  8. Java导包后在测试类中执行正确但在Servlet中执行错误报ClassNotFoundException或者ClassDefNotFoundException解决办法

    将原来导的包remove from build path,并复制到Web-root下的lib目录中,再add to build path,

  9. git私服

    目录 安装 git 在服务器上部署 Git 1.在服务器上创建一个新用户 2.创建一个git仓库 3.在服务器端打开RSA认证(重要) 4.在客户端创建SSH key 5.把步骤4生成的公钥导入服务器 ...

  10. iOS 后台持续定位详解(支持ISO9.0以上)

    iOS 后台持续定位详解(支持ISO9.0以上) #import <CoreLocation/CoreLocation.h>并实现CLLocationManagerDelegate 代理, ...