《Java编程思想》第四版笔记
2016-01-08 14:03
302 查看
《Java编程思想》第四版笔记
一、对象导论
所有编程语言都提供抽象机制。
1.1 Java面向对象的语言五个基本特性
1)万物皆为对象;
2)程序是对象的集合,它们通过通过发送消息告诉彼此所要做的;
3)每个对象都有自己的有其他对象所构成的存储;
4)每个对象都拥有其类型,通俗说每一个对象都是某个类class的一个实例instance;
5)某个特定类型的所有对象都可以接收同样的消息,比如“圆形”类型的对象同时是“几何形”类型的对象,所以一个“圆形”对象必定能够接受发送给"几何形"对象的消息,在笔者看来可以理解为Java三大特性的多态。
1.2 每个对象都有一个接口
笔者表示不太理解,请大神们帮帮本小菜鸡
1.3 每个对象都提供服务
这个比较好理解
1.4 被隐藏的具体实现
访问控制的原因之一就是让其他程序员无法无法触及到他们不应该触及到的部分,原因之二允许其他程序员访问他们改访问的部分。也就是Java权限三个关键字:public、private、protected,还有一种默认的访问权限,包访问权限。
public :公众的 允许外包访问
private:私有的 不允许其他类访问
protected:继承的类可以访问
默认的权限:类可以访问同一个包中的其他成员。
1.5 复用具体实现
代码复用是面对对象程序设计语言最了不起的优点之一,听某叫兽说见了重复代码,就是见了粑粑(屎)一样,一定要提取出来,减少重复代码。
1.6 继承 单继承
这个就不必要讲了,Java三大特性
1.7 “是一个”与“像是一个”关系
就是子类比父类多的方法 就是这种关系
1.8 伴随多态的可互换对象
1.9 参数化类型
1.10 对象的创建和生命期
在使用对象的最关键的问题之一,就是生成和销毁,每个对象都有自己的资源,尤其是内存。
对象的数据位于何处,怎么控制对象的生命周期?C++认为效率控制是最重要的议题。
对象的存储和生命周期可以在编写程序时确定,可以置于堆栈(有时称自动变量)或限制变量或者静态变存储区。
Java提供垃圾回收机制,它可以自动发现对象何时不再使用,继而销毁它。
1.11 异常处理
一、对象导论
所有编程语言都提供抽象机制。
1.1 Java面向对象的语言五个基本特性
1)万物皆为对象;
2)程序是对象的集合,它们通过通过发送消息告诉彼此所要做的;
3)每个对象都有自己的有其他对象所构成的存储;
4)每个对象都拥有其类型,通俗说每一个对象都是某个类class的一个实例instance;
5)某个特定类型的所有对象都可以接收同样的消息,比如“圆形”类型的对象同时是“几何形”类型的对象,所以一个“圆形”对象必定能够接受发送给"几何形"对象的消息,在笔者看来可以理解为Java三大特性的多态。
1.2 每个对象都有一个接口
笔者表示不太理解,请大神们帮帮本小菜鸡
1.3 每个对象都提供服务
这个比较好理解
1.4 被隐藏的具体实现
访问控制的原因之一就是让其他程序员无法无法触及到他们不应该触及到的部分,原因之二允许其他程序员访问他们改访问的部分。也就是Java权限三个关键字:public、private、protected,还有一种默认的访问权限,包访问权限。
public :公众的 允许外包访问
private:私有的 不允许其他类访问
protected:继承的类可以访问
默认的权限:类可以访问同一个包中的其他成员。
1.5 复用具体实现
代码复用是面对对象程序设计语言最了不起的优点之一,听某叫兽说见了重复代码,就是见了粑粑(屎)一样,一定要提取出来,减少重复代码。
1.6 继承 单继承
这个就不必要讲了,Java三大特性
1.7 “是一个”与“像是一个”关系
就是子类比父类多的方法 就是这种关系
1.8 伴随多态的可互换对象
1.9 参数化类型
1.10 对象的创建和生命期
在使用对象的最关键的问题之一,就是生成和销毁,每个对象都有自己的资源,尤其是内存。
对象的数据位于何处,怎么控制对象的生命周期?C++认为效率控制是最重要的议题。
对象的存储和生命周期可以在编写程序时确定,可以置于堆栈(有时称自动变量)或限制变量或者静态变存储区。
Java提供垃圾回收机制,它可以自动发现对象何时不再使用,继而销毁它。
1.11 异常处理
相关文章推荐
- JAVA面向对象的基本特征
- java如何读取property文件
- Spring AOP进行日志记录,管理 (使用Spring的拦截器功能获取对action中每个方法的调用情况)
- java 读写
- javadoc注释规范
- java.lang.OutOfMemoryError
- [转]UML类图、关系及其JAVA代码
- 【java基础】JSTL之EL表达式
- mac AS jdk动态修改、 lambda配置详解
- java中volatile关键字的含义 原子类型变量使用
- java免费发送邮件实现
- MyEclipse2014 普通的java项目换成web项目
- jqujery ajax使用实例
- spring_ajxa
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(九)之Interfaces
- Java语言基础
- java MVC
- JDK 1.7 基本概念和目录结构
- java字符分割
- Debug your Java code with ease using JPDA