大学毕业进入公司已经两个月了,我从事的是Java开发,由于大学过得比较水,我从《Java编程思想》开始了我的学习之路。看了一个月后的今天发现程序还是不会写,于是有了下面的这篇杂谈。
很庆幸的是公司的前辈们给了我很多很好的建议,我分到了一个开发任务比较少的组,负责部门的资源系统,主要是提供对静态资源的增删改查的接口,比较简单。我下载下来代码后就开始看,期间还修改了几个bug和做做了一个小的需求。看代码的过程中发现好多语法知识看不懂,比如注解、容器类的一些方法、Class对象等等,然后我就想补一补这些基础知识。
《Thing in java》是一本很厚的书,同事们都夸我毅力好,能够看进去这么厚的一本书,好多同事也建议我看视频,比如:毕向东Java基础,马士兵Java教程等等,也有的同事建议我直接看代码,模仿着写代码然后遇到不懂的再查看相关资料学习。三者我坚持下来的是看书,看这本厚厚的书,其它的尝试了都没坚持下来。
今天我看到第十五章泛型的时候,自己合上书,打算实现书上的一个小例子——用泛型实现LinkedStack,代码很简单,但是我却自己搞了20分钟,还时不时忘记之前学到的知识(内部类)。
package fanxing;
public class LinkStack<U>{
private static class Node<T>{
T item ;
Node<T> next ;
Node(){
this.item = null;
this.next = null;
}
Node(T t,Node<T> next){
this.item = t;
this.next = next;
}
boolean End(){
if(item != null&& next != null)
return true;
else
return false;
}
}
private Node<U> top = new Node<U>();
U Pop (){
U result = top.item;
if(top.End())
top = top.next;
return result;
}
void Push(U n){
top = new Node(n,top);
}
public static void main(String[] args) {
LinkStack<String > stack = new LinkStack<String>();
for( String s :"hello world i am coming".split(" ")){
stack.Push(s);
}
String s;
while(( s = stack.Pop()) != null)
System.out.println(s);
}
}
突然发现自己的效率太低了,编码能力没有半点提高。其实我有自己的一套学习方法,但是看到身边的人都会编码,心里有些焦急,所以学习的过程中省略了好多细节,今天我打算重新拾起来,一句话:
**No bb ,show your code!!!**
所以我打算把每天学习到的东西(主要是《Java编程思想》,也可认为是读书笔记)晚上抽出时间来整理一下,和大家交流,同时也是对自己的监督。