我的日常

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 盖世程序员 > 菜鸟入门Java语言学习的要点
总共48087条微博

动态微博

查看: 1856|回复: 0

菜鸟入门Java语言学习的要点

[复制链接]

28

主题

1

听众

87

金钱

三袋弟子

该用户从未签到

跳转到指定楼层
楼主
发表于 2014-06-06 20:51:13 |只看该作者 |倒序浏览
一、掌握静态方法和属性, I5 Z9 Z% q/ m) B) `

! k  |* L" H( x/ i6 }! `$ [' C/ v静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征。java中大量应用了静态方法和属性,这是一个通常的技巧。但是这种技巧在很多语言中不被频繁地使用。理解静态方法和属性对于理解类与对象的关系是十分有帮助的,在大量的Java规范中,静态方法和属性被频繁使用。因此学习者应该理解静态方法和属性。Java在方法和属性的调用上是一致的,区别只表现在声明的时候,这和c++是不同的。
3 J( {  m9 ?5 v. S
7 T" r7 X! l* Q% t1 Y8 E二、重视接口
# K8 W( p: p: h$ {7 i/ a+ q. w6 y9 a/ I/ G6 p& O
在面向对象早期的应用中大量使用了类继承。随着软件工程理论的不断发展,人们开始意识到了继承的众多缺点,开始努力用聚合代替继承。软件工程解决扩展性的重要原则就是抽象描述,直接使用的工具就是接口。接口近年来逐渐成为Java编程方法的核心。另一方面,就应用而言,大部分开发是建立在规范基础之上的,不需要自己建立复杂的继承关系和庞大的类。因此读懂规范和用好规范已经成为应用程序开发人员的首要任务,Java各项规范的主要描述手段就是接口。
% Y- I5 J* m' n$ q3 \+ G8 v1 @
" y7 J& t  |% D三、学好集合框架9 ]. `7 \6 l( Y0 H$ a

3 L0 f/ k% }6 @* k7 R5 P, _Java描述复杂数据结构的主要方式是集合框架。Java没有指针,而是通过强大的集合框架描述数组、对象数组等复杂的数据结构。学好这些数据结构的描述方法对于应用程序编写,特别是涉及到服务器方、3层结构编程至关重要。程序员在这个时候不能再用诸如数据库结果集之类的结构描述数据了。
; o6 E  e) Q" _4 ?由于很多语言没有这么强大的集合框架体系,很多初学者不知所措,更不知道拿来做什么用,因此应该引起足够的重视。
& \9 `- x3 j& `3 K& d+ X9 a) K- Y( W" w' p  W2 [: z; w( p  ]
四、例外捕捉! l+ B% w1 Z' C2 l5 s0 x8 }+ `# ~

# q$ r% _) n# R; E4 X: h9 lJava对例外捕捉的强调是空前的,它强迫程序员用显著的与逻辑方法完全不同的方式描述例外捕捉,对于程序描述的完整性和严谨性有很大的意义。c++也有类似的机制,但是我们看到很多c++程序员并不习惯使用这些机制。 1 D& o3 J8 o& i
Java的初学者应该充分学习好这种例外捕捉机制,养成良好的编程习惯。& o  V0 T+ h9 D( J
9 l2 p8 g6 v" q. ]& B4 o( A& G4 t
五、多线程需要理解机理
, Q7 S/ R! F2 K7 z8 }9 n* {: S
- g( G6 X$ @" E7 Y% h很多Java程序员热衷于多线程程序编写,认为是对逻辑能力的挑战。其实在大量应用中根本就不需要编写多线程程序,或者说大多数编写应用程序的程序员不会去写多线程程序。这是因为多线程机制都内置到基础平台当中了。
" ?* \5 p- k: ?; w  F4 u程序员应该了解的是多线程原理和多线程安全,这对于今后准确地把握程序是至关重要的。
% U3 c2 m* {1 D; ~( F1 a' ]例如JSP中编写到不同的位置对于多个用户环境的安全影响完全不同,又如著名的Super Servlet是每一个访问作为一个进程,但是每一个页面是一个线程,和Servlet正好相反,对程序的性能和安全的影响有天壤之别。
/ m( V- D- P6 a6 _  ]) \$ R( {) Y/ ~  ?6 Z2 _) ~
六、了解网络编程9 B1 @" a) U' ?9 r: ^$ l

6 Q9 |4 S- ]! FJava号称是最强的网络编程语言,但是大多数应用程序开发人员是从来不会自己开发什么底层的网络程序的。 1 O, P5 ~' T- {, A" ^5 L
需要做只是了解原理就够了。网络机制的实现是靠平台实现的,除非自己开发平台,否则是不需要知道socket怎么实现,怎么监听访问的。因此在这方面花太多的功夫就偏离了“将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台”这一假设。% y" t+ B- S" G* e* ^* ?. ?; H
3 \8 u/ f& V! H$ _: F

科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、科帮网管理员和版主有权不事先通知发贴者而删除本文


JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

快速回复
您需要登录后才可以回帖 登录 | 立即注册

   

关闭

站长推荐上一条 /1 下一条

发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
快速回复 返回顶部 返回列表