本人是在校生·目前大二,不要以年级论实力··
我学了一年半的Java了··使用过SSH开发过几个项目(团队的)·这些项目都不是toy项目,而是校外的一些公司找我们团队弄的··总结了一下自己目前掌握的东西也就是一般的SSH·当然·不敢妄自说精通,只能说是比较熟练使用并了解基本思想。数据库这边掌握MySql和Oracle 以及SqlServer·同样的,对于原理,正在学习,但这不是Java的本质,我想求教的是如何进阶Java··这些日子为了这个特意去找两本书《thinking in java 》《java 解惑》来看·看了一半·发现自己对Java的理解还是老样子··我热爱Java··所以我想更深入的了解Java··希望高人指教··

解决方案 »

  1.   

    楼主认为Java的本质是什么呢?
      

  2.   

    深入Java虚拟机
    当你能看懂,你的又站在不同的高度了!
      

  3.   

    Java的本质是一个高级编程语言
    这跟Web,移动,框架,数据库等无关因此Java进阶跟任何一门高级编程语言的进阶是一样的,数据结构,算法,代码效率,架构设计
      

  4.   

    楼主要想研究Java的一些深入的机制的话,不一定一开始就去研究虚拟机。有一个东西,是有研究价值滴,如果搞懂了它,用起来将更加方便,那就是JFC。
    Windows提供了很多标准的控制,如按钮,列表框等等。这些组件,JFC中的Swing也提供了。然而,它们是大不一样的。如MFC之类的框架,只是对WindowsAPI进行了封装,最终还是直接使用Windows提供的这些控件的。而Swing,它的这些控制,可以说和Windows提供的这些控件没有一点关系,完全是用自己的机制实现的。你应该早就听说过Swing使用的是MCV机制,那么这到底是如何实现的,你可以去研究研究。
    那么研究这个有什么好处呢?最直接的,就是可以设计出自己的个性化组件,前提是在不改变组件的模型的条件下。比如设计自己个性化的JButton,模型依然使用javax.swing.DefaultButtonModel,而对于UI及Listener,自己进行一些修改。楼主可能会想,设计一个自己的组件又有何难,在一个JPanel上面,通过绘图函数及给JPanel注册各种监听器,不就可以写出来了吗。但是,这样写出来的“组件”,由于设计的方法,使用起来可能将非常的不方便,和其他窗口组件一起使用时,也将会出现各种问题的。
    研究JFC还有另一个好处,就是:很多使用JFC的可能会经常遇到,唉,这个组件的显示怎么和自己的预期不一样呢,什么原因呢?如何解决呢?如果你掌握了JFC的内在实现,对于这种情况,就可以轻松解决了。
      

  5.   

    建议:1、暂时先扔掉JSP、SSH这类东西,至少在学习的时候;
    2、回归J2SE,不用贪多,反复的读《Think in Java》;
    3、利用J2SE深入解决几个编程中的通用问题:I/O、多线程、Socket
    到这个时候,基本功差不多了,接下来:4、读《深入浅出设计模式》,反复读,用心体会,用心记;
    5、有兴趣的话,还可以继续读《Java设计模式》以及四人帮的经典《设计模式》,但不必非要在书本上死抠,在开发中体验是最重要的。到这个地步,你已经是个不错的面向对象的程序员了。接下来:6、学习J2EE,学习企业级架构。
    最重要的还是实战,实战的项目必须丰富,不要只有JSP/SSH。做一些C/S的东西,尤其是做一些服务端程序。当然,移动开发也可以了解下。对于一个熟悉J2SE和OO的人来说,没什么困难的。
    你的时间还很多,不要着急,一步步来,后生可畏。