一周至少两章,去掉最后的并发和图形化用户界面,恰好须要2个半月才能学好。这进度感受有点慢,因此作下调整吧,改为一个月会不会更好点^^,认认真真的把java的圣经给看一遍。java
计划:正则表达式
第1~6 11.17~11.22 数组
第7~11 11.23~11.30安全
第12~16 12.1~12.7闭包
第16~20/21 12.8~12.15并发
今天看了知乎上的评论,发现刚开始阅读CJ,而后是TIJ,最后是EJ,感受仍是蛮有道理的。框架
http://www.zhihu.com/question/29581524学习
另外,作下调整,打算快速把书本在过一遍,由于太多东西已经没有框框印象了,11.30完成,而后剩下两周好好回味(结合CJ)--20151126this
看到11章节,后面的章节,可能要快速浏览了--20151127代理
异常处理、字符串、反射、泛型,都算java中级的内容了,恩,今天生病了,就简单过下吧。今天目标,把目录浏览完毕--20151130
提纲挈领,对OOP、java的特性进行了简要介绍
java hello world,不过若是要入门,随便一个百度均可能都比本书写的更简单易容
五分钟略过,无感
五分钟略过,无感
有点失望,这块,后面对于构造初始化,应该结合JVM好好恶补下,先mark了
通常般
1.组合与继承。
组合:在新类中嵌入某个对象,让其协助实现功能,可是新类的用户看到的是新类所定义的接口,而非嵌入的这个对象的接口。好拗口,不过博主秒懂了。
继承:有时候,咱们须要暴露成员对象,让外界了解其内部实现的过程
2.向上转型
上转型,子类转成父类,相似基础类型的隐私转换,JVM是支持的。也符合里氏替换原则。
3.final
做用域变量/方法/类
4.类加载的顺序
自身静态对象-->构造器-->父类静态对象1-->父类构造器1 -->父类静态对象n-->父类构造器n
1.前期绑定(方法参数申明 单派机制) final static private 修饰的,都是前期绑定
2.后期绑定(也叫动态绑定 多态的实质变现形式)
3.协变返回类型
子类中定义的覆盖方法返回类型能够是具体的子类(Java5才有的)
4.关于继承与组合的抉择
组合优于继承,只有当纯粹的is-a结构的时候,才会考虑使用继承
5.先下转型与运行时类型识别
向上转型会丢失子类特有的信息,所以考虑向下转型
向下转型不是安全的,若是强转不正确,会返回ClassCastException。能够经过instanceof来解决
额外.依赖倒置
接口提供了一种抽象与实现分离的更加结构化的方法
1.关键字 abstract与interface
is-a与has-a
2.多重继承
no way。不过能够经过实现多接口来间接完成。
3.经过继承扩展接口
不少框架都是这么干滴。
4.适配接口
5.接口中的域
5.1 默认带上static final
5.2 记得在哪里看过,不要在接口中定义常量,因此,如今,好像也不多看到这种状况发生了
6.工厂方法
简单工厂的实现
内部类:一个类中定义了另一个类
内部内与外部类关联:内部类经过"外部类.this",而外部内经过"外部类".引用.new 内部类 此处代码先省略之(这里指的是通常的内部类 相对于static的内部类)
内部类存在的几种形式
1.方法中的内部类(可匿名也能够不用),若是内部类中须要使用方法参数,则方法必须是final修饰的
2.实现接口的匿名类
3.嵌套类(静态内部类) 只能访问外部类的静态方法与对象(缘由在于没有了this引用)
为何须要内部类
1.实现多重继承
2.闭包
3.内部类没法被覆盖
内部类标识
外部类.class
外部类$1.class
外部类$内部类.class
1.英文叫Holding YourObjects,本章节介绍的是java的容器。容器跟数组相比,能够动态扩容,形式结构也多样,接口功能也更丰富。
2.泛型
2.1解决早起类型转换问题
2.2存放各类子类(extends与super 固然,这不是本章重点,等泛型了,咱们在重点说下)
2.3 Arrays.asList()、Collections.addAll()
2.4 map的三个变体
HashMap 经过hashcode值来实现快速查找
TreeMap 按照插入顺序
LinkdedHashMap = hashmap+treemap
2.5 List
ArrayList 查找快,插入慢
LinkedList 朝找慢,插入删除快
2.6 迭代器
1. next()
2.hasNext()
3.remove()
上述即是"迭代器模式"的标准方法结构
ListIterator
2.7 Stack
pop()、peek()、push()
2.8 Set
不保存重复的元素(如何定义重复的元素?),内部存储无序
2.9 Map
3.0 Queue
1.FIFO,reverse Stack
2.PriorityQueue
3.1 适配器模式
3.2 非本书内容
新版本的JDK加入了不少新的容器,包括current包下的,感受恶补的东西仍是蛮多的
----------------------------------------------------------------------------------完成于20151127 20:40pm.----------------------------------------------------------------------------------------------
关键信息:throwable、exception、error、throw、throws、try、catch、finally
stackTrace,cause
String
新版本的+与Stringbuffer
printf,format,formatter
正则表达式
类型信息,其实就是反射了,RTTI(run-time type infomation)
Class对象
instanceof 、isInstance()
动态代理
class比较与instanceof区别
过之,至少花两天认真看了
数组与容器的比较:效率、类型、基础类型
数组等同于线性结构容器
数组越界
类型没法保证,对于非基础类型,数组可能存在CastClassException
容器没法泛型基础类型
一维数组与多维数组
数组的经常使用方法:fill() etc
Arrays
过之,单独在研究吧
过之
让我想起了《effective java》中关于枚举的介绍
并没兴趣研究,想学习仍是单独去看《并发实战指南》一书吧,《effective java》中好像也要提到
GUI graphical user interface
swing