加入收藏 | 设为首页 | 会员中心 | 我要投稿 阜阳站长网 (https://www.0558zz.com/)- 科技、建站、内容创作、云计算、网络安全!
当前位置: 首页 > 编程开发 > Java > 正文

8个简单部分开启Java语言学习之路 附java学习书单

发布时间:2020-12-05 03:02:59 所属栏目:Java 来源:互联网
导读:之前为大家推荐了java语言阅读书籍,下面为大家介绍从哪几个方面开始学习java语言,具体内容如下

之前为大家推荐了java语言阅读书籍,下面为大家介绍从哪几个方面开始学习java语言,具体内容如下

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》(本书在国内可能根本就没有中文版DD只能下载英文版了),很不错,讲得很有条例、很简单,是一本完完全全Java Collections API介绍的书籍,其中不凡有扩展API的例子。这是我推荐你学习java数据结构的唯一一本好书。其它的Jones 和Bartlett的那两本国内好像有一本中文版,想看你也可以看看。 

    在学习完API后,你可以看看java.util包中对应的类了。不过只有在学习过设计模式后你才有可能完全理解整个Java Collections Framework。Java Collections Framework使用了很多著名的设计模式如:迭代器(Iterator)模式,工厂方法模式、装饰器模式、适配器模式等等。通过研究java.util包中数据结构的源代码,你可以知道臭名昭著的Properties类的设计了,同时可能基本具备设计简单的数据结构的能力了。 

    所谓学习无止境,学习完Sun提供了Java Collections Framework后,你可以研究Apche的另一个Java Collections Framework,很有意思哦。互为补充的两个Framework。

    在大家学习、研究Java Collections之前,我提示一下Java Collections主要包括以下三部分:接口(Interface)、实现(Implemention)和算法(Algorithm)。 

1.  接口主要有List、Set、Queue和 Map。List 、Se t和Queue是 Collection接口的子接口。 

2.  实现主要是实现这些接口的具体类。如实现List接口的ArrayList、LinkedList、Stack和Vector;实现Set接口的HashSet、TreeSet 和LinkedHashSet;实现Queue接口的PriorityQueue、SynchronousQueue等等;实现Map接口的HashMap、TreeMap、Hashtable、Properties、WeakHashMap等等。 

3.  算法主要是由Arrays类和Collections类提供的,它是整个Java Collection Framework算法的核心。支持各种类型的排序,查找等常用操作。 

Java Collections中包含两个版本的数据结构,主要是原先的支持同步的数据结构和后来不支持同步的数据结构。

Java Collection Framework在使用Comparator和Comparable接口支持排序。同时提供新旧两个版本的迭代器Iterator和Enumeraton,以及它们如何转换等等。

在java.util包中的Obserable接口和Observer类是考察者模式的核心。

……

3. Java IO 

    市面上关于IO的书籍也仅仅只有Oreilly出版社的两本,都是Elliotte Rusty Harold的著作。两本书的风格基本一致,推荐阅读是第一版的《Jvava I/O》,讲得比较浅显,内容相对比较集中,实例也很多。第二版今年5月国外才出版,很有幸我在网络上下载了第二版,讲得极其详细DD726页的大块头(我化了两个星期),这次将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年底才出版,(国内好像没有中文版,不过出了中文版也不一定值得看DD国内经常将国外的书翻译得一塌糊涂、不堪入目)不过我们真的很幸运,网络上有电子版的。值得一看。推荐我看的第一本比较满意的DDWiley出版的《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.  连接数据库DD 
             Connection con = DriverManager.getConnection(url,username,password); 
3.  得到会话DDStatement stmt = con.createStatement(); 
4.  执行操作DDResult rs = stmt.executeQuery(“SQL查询语句”); 
5.  处理结果DD 

     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。

5. Java 网络编程 

(编辑:阜阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读