一、面向对象在软件开发领域的影响:
对于管理人员,他实现了更快更廉价的开发和维护过程。
对于分析与设计人员,建模变得更加简单,能够生成清晰、易于维护的设计方案
对于程序员,对象模型显得如此高雅和浅显。(对象模型的建立已经成了一种艺术)
面向对象的工具以及强大的库更让编程编程了一种愉快的事情
二、专家眼中“纯粹”的面向对象设计方法是这样的:
1、所有的东西都是对象。可将对象想象成一种新型变量——他保存着数据,但是可以要求他对本身的数据进行操作。理论上讲,可以从解决的问题身上提出所有概念性的组件,然后再程序中将其表达为对象。(在java的程序设计中,如何分析具体的问题,就是如何从这些具体的问题上提炼出一个个概念性的组件,并把它转换成合适的对象)
2、程序是一大堆对象的组合。通过消息传递,对象知道自己该干什么。具体的说,可以将消息想象为一个调用请求,他调用的是从属于目标对象的一个子例或者函数。在实际的java程序中,对象与对象之间的联系不就是通过调用对象的方法来实现的么?
3、每个对象都有自己的存储空间,可容纳其他对象。通过封装现有对象,可制作出新型对象。所以,尽管对象的概念非常简单,但是在程序设计中可以达到任意程度的复杂度。(对象中可以包含对象,这样任意的对象都可以是由其他的多个对象任意组合而成)
4、每个对象都有一种类型。根据语法,每个对象都是某个类的一个实例。类class是类型type的同义词。一个类最重要的特征是能将什么消息发给他。
5、同一类的所有对象都能接受统一消息。对象的可替换性,是OOP(object oriented programming)最重要的概念之一。
三、对象的接口interface
如何利用对象完成一些实际的问题呢?我们想对象发送的请求是通过它的接口interface定义的。对象的类型规定了它的接口的形式。(可以这样理解接口,如果把所有的人抽象成一个类,那么所谓的接口就是作为一个人所必须的一些基本的动作。比如呼吸,行走,吃饭,喝水,睡觉等)
四、实现方案的隐藏(java的访问控制机制)
为何要控制对成员的访问?
防止程序员接触他们不应该接触的东西——从安全的角度考虑
允许类设计人员修改类的内部构造,而不用担心使用者会受到任何影响
java的访问控制符:public、private、protected和默认的有好访问friendly
public:意味着后续的定义,任何人都可以使用
private:意味着除自己,类型的创建者以及那个类的内部成员函数,其他人都不能够访问后续的定义
protected:与private类似,只是一个可以继承的类可访问受保护的成员,但不能访问私有成员
friendly:他只能在这个包装(包)的范围内使用
五、继承:重新使用接口
在继承中,若是原始的类发生了变化,继承的子类也会发生相应的变化。所以,继承并不是简单的克隆。
有两种方法可以将衍生类和基础类区别开来:
1、为衍生类添加新的功能函数。
2、改变基础类的一个现有的方法,override
基础类和衍生类的等价关系:
当衍生类只是单纯的继承了基础类的时候,他们之间的关系是等价的,但是衍生类有可能不是单纯的继承基础类,而是在基础上增加了一些新的扩展,这样两者之间就无法等价了
分享到:
相关推荐
vc++面向对象入门PDF类_免费电子书 vc++面向对象入门PDF类_免费电子书
C++面向对象入门与解析 C++面向对象入门与解析 C++面向对象入门与解析 C++面向对象入门与解析
主流软件开发方法面向对象入门C#从入门到精通ppt课件.ppt
JAVA编程思想之对象入门 JAVA编程思想之对象入门 JAVA编程思想之对象入门
Java类和对象入门级实例代码 Java类和对象入门级实例代码
ASP.NET 对象入门(一) 视频教学
ASP.NET2005 对象入门(二) 视频教学
面向对象入门例子,对车辆进行的建模例子,适合对面向对象不是很清楚的新手
java学习之面向对象入门学习
第4章主流软件开发方法——面向对象入门C从入门到精通.ppt
VC++面向对象入门 共part1和part2
VC++面向对象入门 共part1和part2
Labview面向对象编程快速入门
第章主流软件开发方法-面向对象入门优秀资料PPT.ppt
经典的面向对象入门书籍,很适合初级人员,同时,老手看了,亦有意想不到的收获
本书的主要目的是帮助 C程序员学习用 Microsoft Visual C++编译器进行Windows程序设计、面向对象的程序设计(OOP)和C++程序设计的基本概念.同时,本书还可以作为C++类(Microsoft Foundation Classes V2.0)和伴随...
面向对象编程从小白到王者系列课程实战项目
本书的主要目的是帮助c程序员学习用Microsoft visual c++编译器进行windows程序设计、面向对象的程序设计和c++程序设计基本概念。同时,本书还可以作为c++类和伴随Microsoft visual c++的c函数库的程序设计指南
简单的贪吃蛇游戏 有计分共能 适合新手加深对面向对象的的了解 自己做着学习用的