我理解的面向对象(OOP)01

标签: python
48人阅读 评论(0) 收藏 举报
分类:

01面向对象是什么?

(object-oriented)    OO (object-oriened pragramming) OOP

 面向对象是一种程序设计思维,相对于面向过程而言,面向对象开发效率高,复用性强

 面向对象采用基于对象(实体)的概念建立模型;解决问题用对象

02类和对象

对象就是看得见,摸的着的;

类:模板

大黄狗 类(概念,名词的一般是类)

张三牵着大黄狗(对象,实体化的,明确的一般是对象) 具体问题具体分析

03类的构成(通俗理解和python中的类)

通俗理解-----
类由三部分构成(类的名称:类名;类的属性:属性;类的方法:方法;)

实例:定义一个坦克类

类名:Tank

类的属性:重量,速度,材料

类的方法:开炮,移动,转弯

python来定义类-------
#类名
class Tank:
#属性
    def __init__(self):
        self.weight=400
        self.speed=10
        self.material="钢铁"
#方法
     def move(self):
         print("tank正在快速移动)
     def fire(self):
          print(tank正在开炮)
     def  turn(self):
          print("tank正在转弯)

04类的抽象

把现实生活中的场景用类来描述就是类的抽象

一切都是类

05创建对象

描述和了解了那么多类的知识,最终我们讲的是面向对象,回到对象。

python中的类和对象是通过模板来创建对象

创建对象的机制,原理
类的实例
class Cat():
     def eat()
         pass
     def drink()
         pass
#创建一个对象
Cat()  往往把创建好的对象赋值给一个变量  形如 tom = Cat()   用这个变量tom来保存对象
定义一个Cat()类
执行Cat()--------执行后会开辟一块新的内存空间 返回对象的引用(即内存地址)
tom 是变量-------是指向引用地址(对象)
调用对象的方法
tom.eat()   tom.drink()
给对象添加属性(就是变量)
tom.name="汤姆"
tom.age=40
给tom的对象添加两个属性

创建多个对象










查看评论

如何理解面向对象编程(OOP)

想要理解OOP,首先需要清楚什么是对象。            所谓对象就是由一组数据结构和处理它们的方法组成的,划重点 “数据” 包括对象的特性、状态等的静态信息; “方法” 也就是行为,包括该对象...
  • zhouying_12345
  • zhouying_12345
  • 2017-04-27 09:23:42
  • 624

AOP面向切面和OOP面向对象的简单理解比较

【转】   AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。   AOP与OOP是面向...
  • Gentlering
  • Gentlering
  • 2017-10-13 16:12:42
  • 127

如何形象的解释oop---面向对象的概念

对于面向对象编程这个概念,至今为止我还未见过有人能比乔布斯诠释得更加透彻。乔布斯从来没有接受过正式的工程训练,但是他对于自己所做的和所说的都有非常清晰的思路,无论是技术、设计还是艺术。 下面的这...
  • wangzhaotongalex
  • wangzhaotongalex
  • 2015-11-04 10:13:53
  • 690

面向对象是什么鬼(OOP)

什么是面向对象我们知道现代的编程方式基本上都是面向对象了,那么面向对象是什么鬼,面向对象跟面向过程有什么不一样? 面向对象编程(英文Object Oriented Programming),所以也叫...
  • q932104843
  • q932104843
  • 2016-08-24 11:09:02
  • 1062

面向对象编程(OOP)和函数式编程(FP)的思考

最近看过不少 JavaScript 的类(实际是嵌套 function),自己也写了一些,发现一个值得思考的问题。有的作者可能为了提高一点性能,喜欢有事没事把方法里面的某个变量做成类的字段(att...
  • inelm
  • inelm
  • 2007-07-24 17:17:00
  • 503

java中OOP的概念之我见

OOP,面向对象编程,照我的理解就是把现实社会中的各类事物 通过抽取它们的共同特性映射到计算机模型当中的类,这些类有 它们各有的数据结构,也就是属性,以及它们各有的功能,也就是 方法,再通过创建...
  • qq_24693837
  • qq_24693837
  • 2017-02-07 14:16:09
  • 1359

php面向对象(OOP)—什么是面向对象

面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机编程架构,OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成...
  • guoshaoqing001
  • guoshaoqing001
  • 2015-06-03 11:46:46
  • 2734

OOP(1) 为什么要用面向对象编程,它的优点是什么?

说在前面的话身边总能听到有人问这样的问题:学编程哪一种语言比较好? 我觉得在挑选一门语言进行学习之前,你需要做的一件事情就是打开一本介绍这门语言的书,看看他的前言,里边会告诉你这个语言到底是做什么的...
  • huiyuanliyan
  • huiyuanliyan
  • 2016-06-21 11:37:50
  • 3722

OOP(面向对象面试题)

OOP(面向对象) 1:说出一些常用的类,包,接口,请各举5个 常用的类:BufferedReader  BufferedWriter  FileReader  FileWirter  Strin...
  • nysyxxg
  • nysyxxg
  • 2013-04-08 20:32:52
  • 3640

php面向对象(OOP)—final关键字

这个关键字只能用来定义类和定义方法, 不能使用final这个关键字来定义成员属性,因为final是常量的意思,我们在PHP里定义常量使用的是define()函数,所以不能使用final来定义成员属性。...
  • guoshaoqing001
  • guoshaoqing001
  • 2015-06-03 18:22:01
  • 400
    个人资料
    等级:
    访问量: 26
    积分: 91
    排名: 142万+
    文章存档