面向对象方法

面向过程(或者叫结构化)分析方法与面向对象分析方法到底区别在哪里?请根据自己的理解简明扼要的回答。

删除回忆录丶 提交于 2020-03-22 11:38:45
面向过程是从问题的总体目标开始,抽象底层的细节,先专心构造高层的结构,然后再一层一层地分解合细化。   面向对象则是运用对象、类、继承、封装、聚合、消息传递、多态性等概念来构造系统的方法。   面向过程着重于解决问题的从粗略到详尽的方法,二面向对象则关注点是问题本身。好比渔夫捕鱼,使用什么样的网子用什么样的方式撒网收网即是面向过程,而抓到鱼这件事则是面向对象。二者区别在于侧重点不同。 来源: https://www.cnblogs.com/xiongchi/p/5281546.html

面向过程(或者叫结构化)分析方法与面向对象分析方法到底区别在哪里?请根据自己的理解简明扼要的回答。

允我心安 提交于 2020-03-22 11:36:25
正如百度所说,“面向过程”是一种以过程为中心的编程思想。“面向过程”也可称之为“结构化”编程思想,他们是最早发展,并且在编程中起着重要作用的编程思想。 当我们遇到用问题时,就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 对于我来说,学习编程首先接触的便是面向过程的编程思想,如大学首先老师就教我们用c语言编程,对于面向过程的变成思想,自己也有许多的感触, 1, 面向过程的编程思想比较容易实现,解决一个问题时只需要一步一步的分析,一个方向走下去就基本可以实现,但是这也仅限于一个比较小的程序,当遇到一个大问题时,复杂的逻辑关系,使得面向过程变得复杂难写。 2, 面向过程的编程思想最重要的是模块化的思想方法,他的优势在于他的流程非常的清楚,非常便于函数与模块的组织。 而对于面向对象的编程思想则比面向过程的编程思想发展的要晚一些,起初,“面向对象”是专指在程序设计中采用封装、继承、多态等设计方法,现在面向对象的思想已经涉及到软件开发的各个方面。如,面向对象的分析,面向对象的设计,以及我们经常说的面向对象的编程实现,面向对象的编程思想在我的理解中就是把一个比较大的软件项目当成一个对象,然后这个对象的各个部位用一个类专门实现,每个类都是留有接口的,最后把各个部位拼装起来成为最终的产品,这种编程方法使得一个项目更加的具体清晰

深入理解面向对象与面向过程

淺唱寂寞╮ 提交于 2020-03-22 11:23:23
面向对象&面向过程 什么是面向过程? 自上而下顺序执行,逐步求精; 其程序结构是按功能划分为若干个基本模块,这些模块形成一个树状结构; 各模块之间的关系尽可能简单,在功能上相对独立; 每一模块内部均是由顺序、选择和循环三种基本结构组成; 其模块化实现的具体方法是使用子程序。 程序流程在写程序时就已决定。 什么是面向对象? 把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。 对同类对象抽象出其共性,形成类。 类中的大多数数据,只能用本类的方法进行处理。 类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信 程序流程由用户在使用中决定。 理解面向对象 面向对象是相对面向过程而言 面向对象和面向过程都是一种编程思想 面向过程 1. 强调的是功能行为 2. 关注的是解决问题需要哪些步骤 面向对象 1. 将功能封装进对象,强调具备了功能的对象 2.关注的是解决问题需要哪些对象 理解面向对象-把大象装进冰箱 面向对象:把一个人看成一个对象, 这个人 可以打开冰箱,可以把大象装进冰箱,可以关冰箱 面向对象更加符合人的思考习惯,从执行者变成了指挥者 面向过程和面向对象 面向过程: 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象: 是把构成问题的事务分解成各个对象,每个对象都有自己独立的属性和行为,

python面向对象之方法

a 夏天 提交于 2020-03-22 08:01:05
类成员:字段+方法+属性 字段:普通(实例对象,每个对象保存一次)+静态(全局变量,只保存一次,所有方法共享) 方法:普通方法(实例方法:self.fun())+类方法(@classmathod)+静态方法(所有方法分类) 属性:方法属性 #1普通方法:(使用较多) #encoding=utf-8 class Foo: def __init__(self, name): self.name = name def ord_func(self): """ 定义普通方法,至少有一个self参数 """ # print self.name print u'普通方法' #2类方法:(不能使用实例) @classmethod def class_func(cls): """ 定义类方法,至少有一个cls参数 """ print u'类方法' #3静态方法:(将分类)(不能使用实例) @staticmethod def static_func(): """ 定义静态方法 ,无默认参数""" print u'静态方法' # 调用普通方法:实例+.+方法 f = Foo("gloryroad") f.ord_func() # 调用类方法:类+.+方法 Foo.class_func() # 调用静态方法: Foo.static_func() 实例: 将两个文件操作方法,一个改成类方法,一个改成静态方法

C# 面向对象

筅森魡賤 提交于 2020-03-21 18:23:42
面向对象: 面向对象方法是软件工程、程序设计的主要方向,也是最有效、最实用和最流行的软件开发方法之一。 C#是完全面想对象(OOP)的程序设计语言,具有面向对象程序设计方法的所有特性。 面向对象方法的基本思想就是从所要解决的问题本身出发,尽可能运用自然的思维方式(分析、抽象、分类、继承),以现实世界中的事物为中心思考问题、认识问题,并根据这些事务的本质特征,把他们抽象表示为系统中的对象,作为系统的基本构成单位。 面向对象的最基本的特征是抽象性、封装性、继承性、多态性 。 对象(object): 客观世界中任何事物都可以看成一个对象,汽车、房屋、狗都可以看成一个对象。 任何对象都应当具有属性(attribute)和行为(behavior)两个要素。 对象 = 属性 + 行为(方法、操作) 类(class): 类表示具有相同属性和行为的一组对象的集合。 C#程序的源代码必须放到类中,一个程序至少包括一个类。 类是抽象的,不占用内存,而对象是具体的,占用存储空间 抽象(abstraction): 抽象是处理事务复杂性的方法,只关注与当前目标有关的方面,而忽略与当前目标无关的方面。 int是对所有整数的抽象,double是对所有双精度浮点型数的抽象。 封装(encapsulation): 将有关的数据和操作代码封装在一个对象中,形成一个基本单位,各个对象之间相对独立,互不干扰。

[C#基础]基础知识一: 面向对象的基本知识.

落花浮王杯 提交于 2020-03-21 07:22:16
激励自己有时间多看看.!! C#基础共分为七个部分:   一: 面向对象 二: 值类型, 引用类型, 字符串操作   三: 集合文件操作   四: 正则表达式   五: XML操作   六: 委托, 事件   七: 反射 1, 面向对象:   面向对象的三大特性: 封装, 继承, 多态 2, 什么是类? 什么是对象? 类和对象的区别?   类: 类似模子, 确定对象将会拥有的特征(属性) 和行为 (方法)   对象是一个你能够看得到, 摸得着的具体实现-- 万物皆对象.     --类是模具, 创建对象的模具, 抽象的      .类是一组数据类型, 用户自定义的数据类型.      .类组成: 字段, 属性, 方法, 构造函数.     --对象是具体的, 是类的具体实例. 对象是具有属性(特征)和方法(行为)     --类中包含了数据(用字段标示)与行为(用方法(函数, 功能)标示, 方法为一块具有名称的代码) 3, 知识点总结 封装继承多态 一、封装:   封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。 封装的意义:   封装的意义在于保护或者防止代码(数据)被我们无意中破坏。在面向对象程序设计中数据被看作是一个中心的元素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改。

面向对象基本

只愿长相守 提交于 2020-03-19 12:53:25
对象:是具体的事物 类:是对对象的抽象 内存分析 栈: 每个线程私有,不能实现线程间的共享! 局部变量放置于栈中。 栈是由系统自动分配,速度快!栈是一个连续的内存空间! 堆: 放置 new 出来的对象! 堆是一个不连续的内存空间,分配灵活,速度慢! 方法区: 被所有线程共享! 用来存放程序中 永远是不变或唯一 的内容。(类代码信息、静态变量、字符串常量) 属性( field ,或者叫成员变量) 属性用于定义该类或该类对象包含的数据或者说静态属性。 属性作用范围是整个类体 在定义成员变量时可以对其初始化,如果不对其初始化,Java 使用默认的值对其初始化。 ( 数值: 0,0.0 char:\u0000, boolean:false, 所有引用类型 :null) 属性定义格式: [ 修饰符 ] 属性类型 属性名 = [ 默认值 ] 引用类型 Java 语言中除基本类型之外的变量类型 都称之为引用类型。 Java 中的对象是通过引用对其操作的 . 类的方法 方法则用于定义该类或该类的实例的行为特征和功能实现。方法是类和对象行为特征的抽象。方法很类似于面向过程中的函数。面向过程中,函数是最基本单位,整个程序有一个个函数调用组成; 面向对象中,整个程序的基本单位是类,方法是从属于类的。 方法定义格式: [ 修饰符 ] 方法返回值类型 方法名 ( 形参列表 ) { // n 条语句 }

Java面向对象--三大基本特征之多态性

半城伤御伤魂 提交于 2020-03-18 21:29:37
Java面向对象的三大基本特征是:封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism),这三大基本特征是学习Java面向对象开发的基础和重点。本篇博客将详细介绍这三大基本特征中多态性的用法。 ☍ 多态性(Polymorphism) 多态性,是面向对象中最重要的概念,也是三大基本特征中最难的一个。简单的理解就是同一个行为具有多个不同表现形式或形态的能力,或者说多态就是同一个接口,使用不同的实例而执行不同操作。 ▴ 对象的多态性 ☃ 父类的引用指向子类的对象(可以直接应用在抽象类和接口上) ☃ 子类的对象可以替代父类的对象使用 ☄ 一个变量只能有一种确定的数据类型 ☄ 一个引用类型变量可能指向(引用)多种不同类型的对象 Person p = new Student(); //父类Peson变量p指向Student对象 ▴ Java引用变量有两个类型 ☃ 编译时类型:由声明该变量时使用的类型决定(看‘=’左边) ☃ 运行时类型:由实际赋给该变量的对象决定(看‘=’右边) //父类 --> 子类 Person-->Student-->GirlStudent // -->BoyStudent 编译时类型 Person p1 = new Student(); 运行时类型 Person p2 = new GirlStudent(); Person

Java面向对象的三大特征

一个人想着一个人 提交于 2020-03-18 16:17:41
面向对象的本质:以类的方式组织代码,以对象的方式组织数据。 面向对象三大特性:封装 继承 多态 封装:   概念:     隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可扩展性,可维护性。     程序设计要求“高内聚,低耦合”。   实现:     使用访问控制符,实现封装:     private:仅同一个类里可以看到     default:同一个类和同一个包中可以看到     protected:同一个类、同一个包和子类中可以看到(不同包的子类也可以看到)     public:公开,所有类都可以看到   要点:     类的属性的处理:一般使用private(除非本属性确定会让子类继承)。     提供相应的get/set方法来访问相关属性,从而提供对属性的读取操作。 =================================================================== 继承:   概念:     继承是类与类之间的一种关系。     类是对对象的抽象,继承是对某一批类的抽象。     子类继承父类,可以得到父类的全部属性和方法(除了父类的构造方法)。     子类是父类的扩展,提高代码的复用性。     java中只有单继承,没有多继承,多继承可以通过接口来实现。   extends:    

从程序员到软件工程师

懵懂的女人 提交于 2020-03-18 11:59:03
软件产业发展到今天,分工越来越细。程序员做为一个通用的称谓已经无法确切定义各种工作的特点和分类。正因为软件开发中各种职责区分不清,无论是刚刚写代码的新手还是具有多年经验的老手,一概被扣上程序员的通用名称,这也使得很多进入这个领域的软件开发人员无法制定自己未来的技术职业发展之路。 实际上,软件公司也逐渐认识到了对程序员分类的重要性,开始将各种职位定义的更加准确。对于从事软件开发的程序员来说,更需要尽快明确自己的发展方向,并在此方向上将专业知识积累的更深厚,这能让你尽快逃脱对未来发展方向的迷茫。为此,我们专门推出程序员成长系列的特别策划,将分别深入探讨软件设计师、测试工程师、文档工程师、项目经理、产品经理几种角色的成长之路。 程序员成长系列之一 软件设计师可以预先构建软件结构,如同建筑架构师一般。比尔·盖茨被称为微软公司的首席软件设计师,首先是因为他是一个优秀的架构设计师,中国同样需要这样的人才。-微软大中国区总经理黄存义 从程序员到软件设计师 2000年1月13日下午,世界软件业巨人、美国微软公司突然在位于华盛顿州雷德蒙德市的总部举行新闻发布会。比尔·盖茨把微软CEO宝座拱手让给长期伙伴史蒂夫-巴尔默,只保留董事局主席一职,但同时出任新职务“首席软件设计师”。比尔·盖茨说:“今后我将全力设计开发面向未来的新软件,同时研究制定微软的总体技术发展战略。” 比尔