【java编程思想--学习笔记(四)】对象导论
来源:互联网 发布:洗面奶 知乎 编辑:程序博客网 时间:2024/05/10 11:53
写这篇博客的前言:
长话短说,我希望通过阅读《java编程思想》来使我的代码 简洁可用 。
目的的层次不同,首先具体的目标是,了解Java的特性和巩固Java的基础。
更抽象的目的如下:
1、期待以巩固基础的方式,使代码优美,简洁,高效。
2、使自己写的模块能够开放适度,好用。
3、形成一种对代码是否优美的审美观。
于是《Java编程思想》第一章 对象导论 由此开始。
1.1 抽象过程
java 相对于命令式语言的优势在于只针对于待解问题建模。后者所做的主要抽象要求所做问题基于计算机结构,程序员必须在机器模型(例如计算机)和实际待解决模型(在“问题空间内”,即问题存在的地方,例如一项业务)之间建立联系。
面向对象的方式,允许我们通过添加新类型的对象是自身适用于某个特定问题。
面向对象语言的五个基本特性:…..;
1.2 每个对象都有一个接口
类描述了具有相同特性(数据元素)和行为(功能)的对象集合。
而对对象产生的请求,使对象完成某种任务等请求,我们称之为接口。
这里我们需要区分接口产生的方法和类内在行为产生的方法。类内在行为产生的方法的大部分共有方法是接口对对象的请求。
1.2 每个对象都提供服务
当试图开发和理解一个程序设计时,最好的办法之一就是将对象想象成“服务提供者”。程序本身向用户提供服务,他通过调用其他对象所提供的服务来实现这个目的。我的目标就是创建(最好是在现有代码库中寻找)能够提供理想服务来解决问题的一系列对象。
我想这就是我在程序设计中类设计的目标:
能够向其他程序模块提供理想服务,而不只是向其他合作的程序员,这是可用性的目标。
另一个好处便是提高内聚性。(内聚性是指一个系统各个方面“组合得很好”) 这要求我们的程序每个对象都能很好的完成一项任务,但是它并不试图做更多的事。
1.4 被隐藏的具体实现
将程序员按角色划分为类创建者和客户端程序员。
我想客户端程序员提出的就是接口所要求的方法,其他类对象的行为和功能的具体实现,客户端程序员不需要关心。
基于角色和不同角色对类的需求不同,出现访问控制的功能。
1.5 复用的具体实现
组合(与继承所不同)
(“聚合”动态的组合,“组合”:“has-a”)
1.6 继承
“继承”的理解,具有相似功能的两个类,避免重复的处理方式。
继承,继承了功能,更继承了接口。
同时有两种方法说明两个类的差别,添加方法和覆盖方法。
1.7 伴随多态的可互换对象
- 【java编程思想--学习笔记(四)】对象导论
- Java编程思想学习笔记(1)---对象导论
- 1.对象导论---java编程思想(学习笔记)
- Java编程思想学习笔记——对象导论
- JAVA编程思想笔记--第一章 对象导论
- Java编程思想学习笔记(四)
- Java编程思想(一)--对象导论
- java 编程思想--第一章(对象导论)
- 《JAVA编程思想》笔记-对象导论&一切都是对象
- 一.Java对象导论——Java编程思想第4版学习笔记
- 【Java】《Java编程思想》笔记-第一章 对象导论
- Java编程思想笔记——第一章 对象导论
- 《Java编程思想》阅读笔记之第一章对象导论
- 【Java编程思想笔记】第一章——对象导论
- JAVA编程思想学习第一篇の对象导论
- java编程思想学习日志——对象导论
- 面向对象--java学习(java编程思想)笔记
- java编程思想(读书笔记):1.对象导论
- Java心得4
- hdoj 2199 Can you solve this equation? 【二分基础题 注意去掉不满足的情况】
- Silverlight 动画示例
- ubuntu常用命令汇总
- BLE开发的各种坑
- 【java编程思想--学习笔记(四)】对象导论
- css布局学习心得
- Java常用类之Calendar类和GregorianCalendar类
- 行级触发器与语句级触发器的区别
- 全局变量
- 【分享】推荐一些不错的计算机书籍
- php图像函数 imagecreatetruecolor()和imagecreate()的区别
- Hibernate学习(8)关系映射
- Java 环境变量设置