java从推出到现在技术不断发展,语言也优化的越来越好,对于java工程师来说技术的不断发展,他们需要不断学习java进阶,而对于新手来说就能从基础到核心。那么新手该怎么学习呢?下面小编给大家说说java开发需具备技能,希望能对你有些帮助。
[图片0]
掌握静态方法和属性
静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征。java中大量应用了静态方法和属性,这是一个通常的技巧。但是这种技巧在很多语言中不被频繁地使用。理解静态方法和属性对于理解类与对象的关系是十分有帮助的,在大量的java规范中,静态方法和属性被频繁使用。因此学习者应该理解静态方法和属性。Java在方法和属性的调用上是一致的,区别只表现在声明的时候,这和c++是不同的。
重视接口
在面向对象早期的应用中大量使用了类继承。随着软件工程理论的不断发展,人们开始意识到了继承的众多缺点,开始努力用聚合代替继承。软件工程解决扩展性的重要原则就是抽象描述,直接使用的工具就是接口。接口近年来逐渐成为java编程方法的核心。另一方面,就应用而言,大部分开发是建立在规范基础之上的,不需要自己建立复杂的继承关系和庞大的类。因此读懂规范和用好规范已经成为应用程序开发人员的首要任务,Java各项规范的主要描述手段就是接口。
学好集合框架
java描述复杂数据结构的主要方式是集合框架。Java没有指针,而是通过强大的集合框架描述数组、对象数组等复杂的数据结构。学好这些数据结构的描述方法对于应用程序编写,特别是涉及到服务器方、3层结构编程至关重要。程序员在这个时候不能再用诸如数据库结果集之类的结构描述数据了。由于很多语言没有这么强大的集合框架体系,很多初学者不知所措,更不知道拿来做什么用,因此应该引起足够的重视。
例外捕捉
java对例外捕捉的强调是空前的,它强迫程序员用显著的与逻辑方法完全不同的方式描述例外捕捉,对于程序描述的完整性和严谨性有很大的意义。c++也有类似的机制,但是我们看到很多c++程序员并不习惯使用这些机制。Java的初学者应该充分学习好这种例外捕捉机制,养成良好的编程习惯。
多线程需要理解机理
很多java程序员热衷于多线程程序编写,认为是对逻辑能力的挑战。其实在大量应用中根本就不需要编写多线程程序,或者说大多数编写应用程序的程序员不会去写多线程程序。这是因为多线程机制都内置到基础平台当中了。程序员应该了解的是多线程原理和多线程安全,这对于今后准确地把握程序是至关重要的。
例如JSP中编写到不同的位置对于多个用户环境的安全影响完全不同,又如著名的Super Servlet是每一个访问作为一个进程,但是每一个页面是一个线程,和Servlet正好相反,对程序的性能和安全的影响有天壤之别。
了解网络编程
java号称是最强的网络编程语言,但是大多数应用程序开发人员是从来不会自己开发什么底层的网络程序的。需要做只是了解原理就够了。网络机制的实现是靠平台实现的,除非自己开发平台,否则是不需要知道socket怎么实现,怎么监听访问的。因此在这方面花太多的功夫就偏离了“将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台”这一假设。
2怎么学习java
不要总对别人说的给个代码吧!你应该多想想如何做,怎么做?当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异,这样才能进步。
初学者请不要看太多太多的书,只会纷乱你的心思,先找本好书完整系统的学,很多人只对部分功能熟悉而已,不系统功能体系上还是不够的。
看帮助,不要因为很难而自己是初学者所以就不看;多看的参考手册,虽然你可能看不懂,总觉得不够直观。但这才是最根本的东西。
不要被对象、属性、方法等词汇所迷惑;最根本的是先了解最基础知识。
要关注那些细小的细节的问题--他们往往并不那么简单,为了解决它你可能要用到很多很多的东西,帮你回顾知识点;拓宽思路。
知道一点东西,并不能说明你会写脚本,脚本是需要经验积累的。学脚本并不难,JSP、ASP、PHP等等也不过如此--难的是长期坚持实践和不遗余力的博览群书;
学习java最好的方法之一就是上手动手去练习;永远不要认为自己看的书足够了;要看懂书,仔细看书;遇到完全看不懂的书,请硬着头皮看; 别指望看第一遍书就能记住和掌握什么,一次,两次,三次知道搞懂所有的东西;
[图片1]
不着急,因为学习脚本不是一蹴而就的,只有厚积才能薄发。学习的过程中,记下自己喝别人不懂的思路想法。与别人经常交流,记录下在和别人交流时发现的自己忽视或不理解的知识点;
首先你得学会出现问题自己想办法找答案,谷歌、百度都是很好的搜索引擎,你只要输入关键字就能找到很多相关资料,用自己的行动学好java吧。
3怎样学java
我们必须明确一个大方向,也就是说现在面向对象的编程范畴。尽管人工智能曾经有所浪潮,但未来5-10年工业界广泛承认并接受的将是面向对象式的编程。工业界目前最流行的面向对象编程语言就是C++和Java。所以基本上锁定这两个方向就可以了。而且完全可以同时掌握。
掌握Java的精华特性而且一定要知道为什么。比如,Interface和multi-thread。用interface是更好的多继承的模型,而多线程则是设计到语言一级的重要特性。要完全理解interface是为什么,用多线程又有几种常用的编程模型。
理解了Java语言的特性是为什么了之后,就可以试着上升到设计这个层次,毕竟学习语言是要用的。目前比较好的开发模式是采用自定向下的面向对象的设计,加上MVC的模式(你可以看一下我介绍的关于MVC的内容)。首先要找出最顶层的对象(这往往是最难的),然后一层一层往下递归,记住每次应符合7+/-2的原则,因为我们人的短记忆就是这样。一般有图形用户界面的 应从界面开始设计。
最好的方法其实是实践。一般教科书上的例子并不能算是实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能是你自己越来越迷糊。比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的,比如在我的实践当中,我曾经学习过一个很经 典的例子就是用Java实现的HotDraw(源自SmallTalk),你可以用rolemodel或hotdraw在搜索引擎上找一下,我记不大清楚了。从HotDraw上我学到了什么是 framework,以及如何用rolemodel的方式来构造,这样我就可以应用到其他的地方。顺便 说一句,这个例子你绝对不会觉得小,只会觉得大,并且他还是真正的商用的framework 。
4java怎么样学习
第一步:首先要做好学习前的准备工作:java语言一般用于大型的服务器程序开发,所有有必要了解如下内容:Unix开发环境Unix系统原理、Unix开发环境、Unix常用命令。熟练掌握Unix常用命令;熟练构建下的Java开发环境。
第二步:然后进入Java语言基础的学习阶段,学习任何一门语言都要打好基础,曾经学过高级程序语言(C,C++等)来说,java语言基础有自己的特点,但是基本规律都是相通的,如:算法基础、常用数据结构、企业编程规范。掌握常见的数据结构和实用算法;培养良好的企业级编程习惯。
第三步:掌握java语言基础后接下来就是面向对象语言的共性:Java面向对象面向对象特性:封装、继承、多态等。掌握面向对象的基本原则以及在编程实践中的意义;掌握Java面向对象编程基本实现原理。
第四步:JDK核心API语言核心包、异常处理、常用工具包、集合框架。熟练掌握JDK核心API编程技术;理解API设计原则;具备熟练的阅读API文档的能力;JavaSE核心异常处理、多线程基础、IO系统、网络编程、Swing组件、JVM性能调优(JVM内存结构剖析、GC分析及调优、JVM内存参数优化)、Java泛型、JDK新特性。熟练掌握JavaSE核心内容,特别是IO和多线程;初步具备面向对象设计和编程的能力;掌握基本的JVM优化策略。XML XML语法、XML解析(SAX、DOM)、Dom4j组件、Digester组件。熟练掌握XML语法规则;理解DOM模型;熟悉Java对XML的各种解析方式。
