C#中面向对象和基于对象究竟有什么差别,要怎么来学习。
4个回答
2013-12-04
展开全部
很多人没有区分“面向对象”和“基于对象”两个不同的概念。面向对象的三大特点(封装,继承,多态)缺一不可。通常“基于对象”是使用对象,但是无法利用现有的对象模板产生新的对象类型,继而产生新的对象,也就是说“基于对象”没有继承的特点。而“多态”表示为父类类型的子类对象实例,没有了继承的概念也就无从谈论“多态”。现在的很多流行技术都是基于对象的,它们使用一些封装好的对象,调用对象的方法,设置对象的属性。但是它们无法让程序员派生新对象类型。他们只能使用现有对象的方法和属性。所以当你判断一个新的技术是否是面向对象的时候,通常可以使用后两个特性来加以判断。“面向对象”和“基于对象”都实现了“封装”的概念,但是面向对象实现了“继承和多态”,而“基于对象”没有实现这些,的确很饶口。
从事面向对象编程的人按照分工来说,可以分为“类库的创建者”和“类库的使用者”。使用类库的人并不都是具备了面向对象思想的人,通常知道如何继承和派生新对象就可以使用类库了,然而我们的思维并没有真正的转过来,使用类库只是在形式上是面向对象,而实质上只是库函数的一种扩展。
面向对象是一种思想,是我们考虑事情的方法,通常表现为我们是将问题的解决按照过程方式来解决呢,还是将问题抽象为一个对象来解决它。很多情况下,我们会不知不觉的按照过程方式来解决它,而不是考虑将要解决问题抽象为对象去解决它。
从事面向对象编程的人按照分工来说,可以分为“类库的创建者”和“类库的使用者”。使用类库的人并不都是具备了面向对象思想的人,通常知道如何继承和派生新对象就可以使用类库了,然而我们的思维并没有真正的转过来,使用类库只是在形式上是面向对象,而实质上只是库函数的一种扩展。
面向对象是一种思想,是我们考虑事情的方法,通常表现为我们是将问题的解决按照过程方式来解决呢,还是将问题抽象为一个对象来解决它。很多情况下,我们会不知不觉的按照过程方式来解决它,而不是考虑将要解决问题抽象为对象去解决它。
2013-12-04
展开全部
面向对象主要有几个特性,封装、继承、多态。没有封装就不能继承,没有继承就没有运行时的多态。
基于对象并不是单独的理论,而是面向对象的初级阶段,就是只有封装。只能是把属性、方法放进类中,实例化对象调用。
学习面向对象要从基础知识入手,学会定义类、接口的定义、继承。然后要深入细致的研究现实事物,把现实事物或是需求文档中的名词抽象出来生成类或属性,如果是主语,多半还要根据整句的描述生成方法,定义类结构。之所以叫抽象,是因为定义类成员时要忽略掉系统不需要的其它东西。
慢慢你就发现原来写程序要不停的增删代码和重构。经验丰富了,就能设计出只增加代码,不修改、删除代码的类结构了。
基于对象并不是单独的理论,而是面向对象的初级阶段,就是只有封装。只能是把属性、方法放进类中,实例化对象调用。
学习面向对象要从基础知识入手,学会定义类、接口的定义、继承。然后要深入细致的研究现实事物,把现实事物或是需求文档中的名词抽象出来生成类或属性,如果是主语,多半还要根据整句的描述生成方法,定义类结构。之所以叫抽象,是因为定义类成员时要忽略掉系统不需要的其它东西。
慢慢你就发现原来写程序要不停的增删代码和重构。经验丰富了,就能设计出只增加代码,不修改、删除代码的类结构了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-04
展开全部
面向对象是一种软件开发思想。基于对象意思大概是基于面向对象这一种方法。
建议:不要拘泥于这样的字眼。程序写多了就行了。
建议:不要拘泥于这样的字眼。程序写多了就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-04
展开全部
c语言是结构化程序设计,而c++是在c的基础上发展起来的,是c的一个扩展;纯的c语言精炼短小,很适合在嵌入式开发中用到!这个是c的优越性!而c++是基于对象的程序语言,里面有类,它具有封装,多态,继承性!c++具有的这三个特征就是c++在写程序的时候的优越性!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询