《THINKING IN JAVA》随笔
2016-03-10 18:02
274 查看
第九章 接口
抽象类:不能创建实体类。
接口之间是可以嵌套的,所有接口元素必须是public的。
接口是实现多重继承的重要途径,生成遵循某个接口的对象的典型方式就是工厂方法设计模式。
任何抽象都应该是应真正的需求而产生的。
第十章 内部类
将一个类的定义放在另一个类的内部,这就是内部类。
注意在某些位置使用时要指明这个对象的类型:OuterClassName.InnerClass
Name。内部类能访问外部类的所有成员,不需任何特殊条件。
内部类标识符:编译的时候内部类前通常有外部类+&
,如
LocalInnerClass&LocalCounter.class
内部类最大的优点是可以独立的继承自一个接口的实现,无论外围类是否已经实现了该接口。
第十一章 持有对象
如果一个程序只包含固定数量的且其生命周期都是已知的对象,那么这是一个非常简单的程序。
如果一个类没有显示的生命继承自哪个类,那么他自动继承自Object。容器里只是保存的Object的对象,因此,要转型成你需要的那个对象。
1.Collection 独立元素的序列,List必须按照插入的顺序保存,Set不能有重复的元素。Queue按照排队规则来确定顺序。
2.Map 键值对方式存储。
3.容器不能存放基本类型。
栈:LIFO的容器,可用LinkedList来模拟。
第十二章 通过异常处理错误
JAVA的理念是结构不佳的代码不能运行。发现错误的理想时机是在编译阶段,即运行之前,余下的问题必须在运行期间解决,这就要提供代码健壮性的机制(错误恢复机制)。
4000
异常情形是指阻止当前方法或作用域继续执行的问题,在当前环境下无法获取必要的信息来解决问题,就从当前环境跳出,并把问题抛给上一级处理。
监控区域:是一段可能产生异常的代码,后面跟着处理这些异常,如try块。
Throwable这个类可抛出两种类型:Error和Exception。
第十三章 字符串
String是final,对它操作都是拷贝了一份的引用传递,例如StringBuilder。
第十四章 类型信息
Class.forName(classname)会直接加载初始化改类,而Class ignitable = Initable.class只是获得该类的引用不会引发初始化。
在遭遇反射的修改时,final是安全的,private权限久不安全了。
第十五章 范型
实现了一个接口的类可以转化为这个接口,,而范型实现了参数化类型的概念。范型方法能独立于类而发生变化,能用尽量用。
混型:混合多个类的能力,以产生一个可以表示混型中所有类型的类。
抽象类:不能创建实体类。
接口之间是可以嵌套的,所有接口元素必须是public的。
接口是实现多重继承的重要途径,生成遵循某个接口的对象的典型方式就是工厂方法设计模式。
任何抽象都应该是应真正的需求而产生的。
第十章 内部类
将一个类的定义放在另一个类的内部,这就是内部类。
注意在某些位置使用时要指明这个对象的类型:OuterClassName.InnerClass
Name。内部类能访问外部类的所有成员,不需任何特殊条件。
内部类标识符:编译的时候内部类前通常有外部类+&
,如
LocalInnerClass&LocalCounter.class
内部类最大的优点是可以独立的继承自一个接口的实现,无论外围类是否已经实现了该接口。
第十一章 持有对象
如果一个程序只包含固定数量的且其生命周期都是已知的对象,那么这是一个非常简单的程序。
如果一个类没有显示的生命继承自哪个类,那么他自动继承自Object。容器里只是保存的Object的对象,因此,要转型成你需要的那个对象。
1.Collection 独立元素的序列,List必须按照插入的顺序保存,Set不能有重复的元素。Queue按照排队规则来确定顺序。
2.Map 键值对方式存储。
3.容器不能存放基本类型。
栈:LIFO的容器,可用LinkedList来模拟。
第十二章 通过异常处理错误
JAVA的理念是结构不佳的代码不能运行。发现错误的理想时机是在编译阶段,即运行之前,余下的问题必须在运行期间解决,这就要提供代码健壮性的机制(错误恢复机制)。
4000
异常情形是指阻止当前方法或作用域继续执行的问题,在当前环境下无法获取必要的信息来解决问题,就从当前环境跳出,并把问题抛给上一级处理。
监控区域:是一段可能产生异常的代码,后面跟着处理这些异常,如try块。
Throwable这个类可抛出两种类型:Error和Exception。
第十三章 字符串
String是final,对它操作都是拷贝了一份的引用传递,例如StringBuilder。
第十四章 类型信息
Class.forName(classname)会直接加载初始化改类,而Class ignitable = Initable.class只是获得该类的引用不会引发初始化。
在遭遇反射的修改时,final是安全的,private权限久不安全了。
第十五章 范型
实现了一个接口的类可以转化为这个接口,,而范型实现了参数化类型的概念。范型方法能独立于类而发生变化,能用尽量用。
混型:混合多个类的能力,以产生一个可以表示混型中所有类型的类。
相关文章推荐
- Java编程思想学习(三) 初始化与清理
- Eclipse工作常用技巧总结
- Spring源码解析 - BeanFactory接口体系解读
- JAVA中的命令模式实例教程
- Java设计模式学习总结
- java.lang.UnsatisfiedLinkError: Can not load XXX library ... JNA不能加载DLL动态库问题
- java 静态代理 JDK动态代理 Cglib动态代理
- Java编程思想学习(二) 操作符
- JAVA高级程序设计学习计划
- eclipse快捷键大全
- java NIO原理及通信模型
- Java编程思想学习(一) 一切都是对象
- java笔记1→认识java与配置环境变量
- java 正则表达式
- myeclipse内存配置
- java设计模式——代理模式
- 关于10元钱能喝多少瓶酒的问题
- 解决JAVA调用mysqldump备份数据库时文件为空的问题
- 单例模式(Singleton Pattern)
- Spring mvc实现上传文件进度条