热门关键字: php net javascript java
Just Internet && Only Internet
您的位置:java > Java学习方法
Java学习方法
发布时间:2017-07-27 15:28:49

1. Java 语言基础

  谈到 Java 语言基础学习的书籍,大家肯定会推荐 Bruce Eckel 的《Thinking in Java》。它是一本 写的相当深刻的技术书籍,Java 语言基础部分基本没有其它任何一本书可以超越它。该书的作者 Bruce Eckel 在网络上被称为天才的投机者,作者的《Thinking in C++》在 1995 年曾获 SoftwareDevelopment Jolt Award 最佳书籍大奖,《Thinking in Java》被评为 1999 年 Java World“最爱读者欢迎图书”, 并且赢得了编辑首选图书奖。作者从 1986 年至今,已经发表了超过 150 篇计算机技术文章,出版了 6 本书(其中 4 本是关于 C++的),并且在全世界做了数百次演讲。他是《Thinking in Java》、《Thinking in C++》、《C++ Inside & Out》《Using C++》和《Thinking in Patterns》的作者,同时还是《Black Belt C++》文集的编辑。他的书被读者称为“最好的 Java 参考书……绝对让人震惊”;“购买 Java 参考书 最明智的选择”;“我见过的最棒的编程指南”。作者的非凡才华,极其跨越语言的能力,使作者被选 为 Java 发展 10 年间与 Java 关系最密切的 10 个人物之一。 《Thinking in Java》讲述了 Java 语言的方方面面,很多 Java 语言的老手都评价“这是一本将 Java 语言讲得相当丑陋的书”。该书谈及了 java 语言的很多细节,每一个方面都是相当深刻的。通过本书你 可以看到“丑陋的”java 语言。 网络上关于 java 语言讲解的视频很多很多,其中不凡有垃圾。《翁恺—JAVA 语言》可能是你学习 java 语言基础的唯一选择,该讲座基本按照《Thinking in Java》这本书讲解,其中不凡有翁老师的很多有意 思的笑话。我很幸运学习就是从此视频开始的。内容包括 30 讲,我总共看了 3 遍。 不过,对于初学者我不太推荐使用《Thinking in Java》,我比较推荐 Prentice Hall PTR 的 《Core Java 2》国内称为《Java 2 核心技术》,目前是第七版。网络上大家都可以下载到电子版。Oreilly 的 《Java in a nutshell》也是一个不错的选择。读完以上两本后,你可以看看翁恺老师的视频,接着可以研 究《Thinking in Java》了。

2. Java 数据结构

   市面上关于 Java 数据结构的书本身就很少很少。大致有 APress 的《Java Collections》,Jones 和 Bartlett 的《Data Structures in Java》、《Object-oriented Data Structures Using Java》以及 Prentice Hall 出版的《Data Structures and Algorithms in Java》 (Dec 19, 2005)还有一本就是 《Data Structures And Algorithms With Object-oriented Design Patterns In Java》。很幸运我的 第一本英文书就是 APress 的《Java Collections》(本书在国内可能根本就没有中文版――只能下载英 文版了),很不错,讲得很有条例、很简单,是一本完完全全 Java Collections API 介绍的书籍,其中 不凡有扩展 API 的例子。这是我推荐你学习 java 数据结构的唯一一本好书。其它的 Jones 和 Bartlett 的那两本国内好像有一本中文版,想看你也可以看看。 在学习完 API 后,你可以看看 java.util 包中对应的类了。不过只有在学习过设计模式后你才有可 能完全理解整个 Java Collections Framework。Java Collections Framework 使用了很多著名的设计 模式如:迭代器(Iterator)模式,工厂方法模式、装饰器模式、适配器模式等等。通过研究 java.util 包中数据结构的源代码,你可以知道臭名昭著的 Properties 类的设计了,同时可能基本具备设计简单 2 的数据结构的能力了。 所谓学习无止境,学习完 Sun 提供了 Java Collections Framework 后,你可以研究 Apche 的另一 个 Java Collections Framework,很有意思哦。互为补充的两个 Framework。

3. Java IO

市面上关于 IO 的书籍也仅仅只有 Oreilly 出版社的两本,都是 Elliotte Rusty Harold 的著作。 两本书的风格基本一致,推荐阅读是第一版的《Jvava I/O》,讲得比较浅显,内容相对比较集中,实例 也很多。第二版今年 5 月国外才出版,很有幸我在网络上下载了第二版,讲得极其详细――726 页的大 块头(我化了两个星期),这次将 NIO 和 IO 和在一起,还包括 J2ME 部分的,不过串口、并口通信部分 好像类库支持不够,自己不能实际操作。 与第一版的《Jvava I/O》一起的 Oreilly 还有一本《Jvava NIO》,也是很不错的哦。 大家在依次阅读完《Jvava I/O》以及《Jvava NIO》后,可以研究 java.io 包中的源代码了。在大 家研究源代码前我给点提示: Java 的 io 包主要包括: 1. 两种流:字节流(byte Stream)和字符流(character stream),这两种流不存在所谓的谁代 替谁、谁比谁高级之说,它们互为补充,只是侧重点不同而已。 2. 两种对称:1.字节流、字符流的对称;2.输入、输出的对称。 3. 一个桥梁:将字节流转变为字符流的 InputStreamReader 和 OutputStreamWriter。 其中必须注意: 1. PipedInputStream 和 PipedOutputStrem 是两个比较有趣的类。 2. 支持 Buffered 的流是我们经常使用的类。 3. 装饰器(Decorator)模式在 java 最著名的应用就是用于 io 的设计。仔细研究各个 Filter 流 与具体流的关系,多看设计模式的书籍。相信你会有所所获。 4. 学习好 io 包,是研究 net 包,rmi 包……的基础哦!

4 . Java 数据库

数据库的书籍太多太多了,也是太烂太烂了!这方面的书我基本都研究过,推荐的你就看看 Apress 的《JDBC Recipes A Problem Solution Approach 》很不错,国外 2005 年底才出版,(国内好像没有 中文版,不过出了中文版也不一定值得看――国内经常将国外的书翻译得一塌糊涂、不堪入目)不过我 们真的很幸运,网络上有电子版的。值得一看。推荐我看的第一本比较满意的――Wiley 出版的《Java Database Bible》,讲得很不错! Sun 公司自己的关于 JDBC API 介绍的那一本《JDBC API Tutorial andRefernece》也不错。我第二 本 JDBC 的就是研究的这套 API。 不过目前这些书都是一些相对比较浮浅的 API 应用的书籍。有机会我会给大家带来介绍 JDBC API 以及 JDBC 实现内部细节的书!我尽快努力,同时希望得到大家的支持! 顺便给学习 JDBC 的朋友一点提示: JDBC 的学习和使用主要是这套 API,其使用过程也是极其简单,下面是使用 JDBC 的一般流程: 1. 加载某个数据库的驱动(Driver 类),通常使用 Class.forName(“驱动的类名“); 2. 连接数据库―― Connection con = DriverManager.getConnection(url,username,password); 3. 得到会话――Statement stmt = con.createStatement(); 4. 执行操作――Result rs = stmt.executeQuery(“SQL 查询语句”); 5. 处理结果―― while(rs.next()){ String col1 = rs.getString(1); …… } 简单吧!整个 JDBC 中可以变化的一般是: 1. 可以由 Connection 对象创建 Statement、PreparedStatement 和 CallableStatement 创建三种 类型的 Statement。 2. 可以创建多种类型的 ResultSet:支持单向移动和个自由移动;可更新的和不可更新的;支持 不同等级的交易的….. 3. 数据输入的批处理。 4. 结果集中特殊类型(Blob、Clob、Arrary 和 Ref、Struct)列的操作。 5. 这些特殊类型的录入数据库。 6. javax.sql 包中特殊结果集(CachedRowSet、JdbcRowSet、WebRowSet)的操作。 7. 其它的就是一个 DataSource 了,也很简单!一个 J2EE 中的被管理对象 简单吧!相信大家很快就会征服 JDBC。

登录 评论文章
声明:本站部分内容来自网络,如您发现本站内容侵害到您的利益,请联系本站管理员处理。