以我现在的认知,只是知道的是VB是基于对象的编程语言、C++是面向对象的编程语言。
那我们如何区分什么是基于对象,什么是面向对象?根据上述的两种编程语言我们就可以知道“面向对象”和“基于对象”是两个不同的概念了吧!
基于对象是使用对象,意味着它们有像C++的结构加函数这样的对象,然而这只是到达面向对象语言的一部分,停留在把函数捆绑在结构内部的语言是基于对象的。但是无法利用现有的对象模板产生新的对象类型,继而产生新的对象,也就是说基于对象一般没有继承的特点。没有了继承的概念也就无从谈论多态。
基于对象并不是单独的理论,而是面向对象的初级阶段,就是只有封装。只能是把属性、方法放进类中,实例化对象调用。学习面向对象要从基础知识入手,学会定义类、接口的定义、继承。然后要深入细致的研究现实事物,把现实事物或是需求文档中的名词抽象出来生成类或属性,如果是主语,多半还要根据整句的描述生成方法,定义类结构。之所以叫抽象,是因为定义类成员时要忽略掉系统不需要的其它东西。慢慢你就发现原来写程序要不停的增删代码和重构。经验丰富了,就能设计出只增加代码,不修改、删除代码的类结构了。
要掌握面向对象技术不是一件容易的事,这要求我们对于所有的编程事务从“对象”的角度来考虑,是一种全新的思考问题的方法。
从过程编程到对象编程,应该是观念上的变化吧。通过学习了解我个人认为面向对象编程比较基本的看法就是把一个一个对象看过是一个一个的黑盒子,黑盒子提供一下方法,外部无需看到,只要注意对象就可以了。