菜鸟入门:Java语言学习六大要点

  提问: 7 年 前 最后更新: 1 年 前 浏览数: 31194
7
4

菜鸟入门:Java语言学习六大要点

Java的学习是比较复杂的,主要表现在相关的一系列平台、规范和协议上。有经验的Java程序员都知道,只掌握了Java语言本身很难开发应用程序。本文不讨论这些复杂的概念,而是我是在北京参加的培训,现在从初学者的角度,对于Java语言本身的学习提出自己的见解和建议。本文的讨论基于以下假设:

    1. 学习的目的是为了将来进行应用程序的开发,而不是进行语言理论研究

    2. 将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台

    一、掌握静态方法和属性

    静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征。java中大量应用了静态方法和属性,这是一个通常的技巧。但是这种技巧在很多语言中不被频繁地使用。理解静态方法和属性对于理解类与对象的关系是十分有帮助的,在大量的java规范中,静态方法和属性被频繁使用。因此学习者应该理解静态方法和属性。Java在方法和属性的调用上是一致的,区别只表现在声明的时候,这和c++是不同的。

    二、重视接口

    在面向对象早期的应用中大量使用了类继承。随着软件工程理论的不断发展,人们开始意识到了继承的众多缺点,开始努力用聚合代替继承。软件工程解决扩展性的重要原则就是抽象描述,直接使用的工具就是接口。接口近年来逐渐成为java编程方法的核心。另一方面,就应用而言,大部分开发是建立在规范基础之上的,不需要自己建立复杂的继承关系和庞大的类。因此读懂规范和用好规范已经成为应用程序开发人员的首要任务,Java各项规范的主要描述手段就是接口。

    三、学好集合框架

    java描述复杂数据结构的主要方式是集合框架。Java没有指针,而是通过强大的集合框架描述数组、对象数组等复杂的数据结构。学好这些数据结构的描述方法对于应用程序编写,特别是涉及到服务器方、3层结构编程至关重要。程序员在这个时候不能再用诸如数据库结果集之类的结构描述数据了。

    由于很多语言没有这么强大的集合框架体系,很多初学者不知所措,更不知道拿来做什么用,因此应该引起足够的重视。

    四、例外捕捉

    java对例外捕捉的强调是空前的,它强迫程序员用显著的与逻辑方法完全不同的方式描述例外捕捉,对于程序描述的完整性和严谨性有很大的意义。c++也有类似的机制,但是我们看到很多c++程序员并不习惯使用这些机制。
Java的初学者应该充分学习好这种例外捕捉机制,养成良好的编程习惯。

    五、多线程需要理解机理

    很多java程序员热衷于多线程程序编写,认为是对逻辑能力的挑战。其实在大量应用中根本就不需要编写多线程程序,或者说大多数编写应用程序的程序员不会去写多线程程序。这是因为多线程机制都内置到基础平台当中了。
程序员应该了解的是多线程原理和多线程安全,这对于今后准确地把握程序是至关重要的。

    例如JSP中编写到不同的位置对于多个用户环境的安全影响完全不同,又如著名的Super Servlet是每一个访问作为一个进程,但是每一个页面是一个线程,和Servlet正好相反,对程序的性能和安全的影响有天壤之别。

    六、了解网络编程

    java号称是最强的网络编程语言,但是大多数应用程序开发人员是从来不会自己开发什么底层的网络程序的。需要做只是了解原理就够了。网络机制的实现是靠平台实现的,除非自己开发平台,否则是不需要知道socket怎么实现,怎么监听访问的。因此在这方面花太多的功夫就偏离了“将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台”这一假设。

提问时间 2011-10-11 19:31

fmms的头像

fmms
0 5 7
答案被采用率: 14.285714285714285%

谢谢指导
6 年 前 jiaxin0503
2
对新手来说,意见还是很中肯的
6 年 前 yanruoke
很不错的指导,谢谢楼主。
2 年 前 ghhOpen
谢谢经验分享
2 年 前 yaoxiaohan
it's great
1 年 前 Whatalife

12 3 4 [下一页]

Mark

回答于 2011-11-25 13:54

mxylgh92的头像

mxylgh92
0 0 2
答案被采用率: 0.0%

而且

回答于 2016-01-22 16:40

dabaojian的头像

dabaojian
0 0 9
答案被采用率: 0.0%

恩,还不错。我觉得,如果真正想学,JAVA核心技术和编程思想是必须认真研究的。

回答于 2011-11-20 01:29

luwanchuan的头像

luwanchuan
0 0 8
答案被采用率: 0.0%

很好,我以为是特点哪。

6 年 前 jingyu123
第三点很重要

回答于 2012-03-28 13:44

zhenpei的头像

zhenpei
0 0 2
答案被采用率: 0.0%

写的很不错l

回答于 2011-11-25 15:59

caoyuan1的头像

caoyuan1
0 0 1
答案被采用率: 0.0%

凡是开源的东西,要学习的东西就是多的很,
文中的6点只是java语言本身而言,javaWEB才是java的大路。

回答于 2012-09-25 16:02

QIUSHENG的头像

QIUSHENG
0 0 3
答案被采用率: 0.0%

嗯 学习了

回答于 2011-11-26 10:40

leiricong的头像

leiricong
0 0 3
答案被采用率: 0.0%

Java 知识体系要学习的东西太多了,不过你可以偏向与某个方向。
可以多到www.leezk.com看看,也许你对云计算这方面感兴趣

回答于 2013-09-10 07:45

liunkor的头像

liunkor
2 0 3
答案被采用率: 0.0%

学习了

回答于 2016-10-11 12:22

gsm340的头像

gsm340
0 0 5
答案被采用率: 0.0%

挺好的资料

回答于 2016-10-12 21:01

chen_xyun的头像

chen_xyun
0 0 3
答案被采用率: 0.0%

您的回答:

  

powered by Open-Open.com