当前位置:网站首页 > Java基础 > 正文

0基础学java书单



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

1. Java语言基础

2. Java数据结构

3. 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数据库

    不过目前这些书都是一些相对比较浮浅的API应用的书籍。有机会我会给大家带来介绍JDBC API以及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中的被管理对象

5. Java 网络编程

     java网络编程其实相对比较简单,入门也很快很快。java网络编程主要包括两个部分:1.Socket;2.URL部分。不过第二部分也完全建立在第一部分的基础上。
1. Socket包括客户端的Socket和服务器端的ServerSocket。还有就是DatagramSocket和DatagramPacket,它对应于UDP通信协议。 总之,Socket部分是建立其它高级协议的基础。
2. URL类是一个网络资源定位器,通常和具体的网络协议如HTTP,FTP,Telnet……相关。通过该类可以连接网络上的资源,通过其openStream可以以io包中的流(InputStream)的形式读取网络资源;通过其OpenConnection方法,可以打开一个连接,在此连接上可以不仅可以完成读的操作,还可以完成写的操作。

6. Servlet和JSP

1. 继承一个HttpServlet类;
2. 覆盖其doGet、doPost方法;
3. 在覆盖方法的内部操作方法参数HttpServletRequest和HttpServletResponse。
4. 读取请求利用HttpServletRequest。利用HttpServletRequest你可以操作Http协议的协议头、可以得到请求的操作方法、可以得到请求的路径、可以得到请求的字符串、以及和请求客户相关的信息,更主要的你可以得到Cookie和HttpSession这两个对象。
5. 利用Cookie你可以操作“甜心”对象或者将其写入HttpServletResponse中。
6. 向客户输出信息可以使用HttpServletResponse。使用HttpServletResponse可以写入各种类型的协议头、可以增加Cookie、可以重定向其它URL、可以向客户发送Http协议的状态码。
7. 利用HttpSession在会话内完成你想实现的任何功能。
    同时Servlet还提供了一些事件和事件监听器(简单的观察者模式而已)。还有就是过滤器(Filter)和包装器(ServletRequestWrapper、ServletResponseWrapper)――简单的流的使用和装饰器模式的使用。

7. 多线程

    给大家一点提示吧!java类库中与多线程相关的类不是很多,主要有:Thread、ThreadGroup以及ThreadLocal和InheritableThreadLocal四个类和一个Runnable接口;关键字synchronize、volatile ;以及Object对象的wait、notify、notifyAll方法!
1 Thread是多线程的核心类,提供了一系列创建和操作多线程的方法。
2 ThreadGroup是一个管理Thread的工具类。
3 ThreadLocal和InheritableThreadLocal为Thread提供了一个类似保险箱功能的存储线程对象的类!
4 Runnable不用说了吧!
5 synchronize是同步方法和同步块的核心哦!多个线程调用此方法时,只有一个线程可以使用此方法,其它方法阻塞,从而保证**作对象内部状态完整性。某个线程调用带有synchronize的方法或块时会得到该对象的对象锁,完成块中的操作后释放此对象锁,从而其它对象可以继续操作。
6 wait、notify、notifyAll提供了有效的等待/通知机制。Java语言中每一个对象都有一个休息室,任何线程在其操作的对象的状态不满足的情况下,在该对象的休息室中休息,释放对象锁;当其它线程操作该对象后,唤醒休息室中的线程,它们再检查条件,当条件满足后,执行相应的操作。

8. 设计模式

    学习Java语言8个简单的部分,这只是我们研究Java语言的开始!这些都懂了充其量一个java程序员而已,后面的路很长很长!我们可以继续研究数据库实现的源代码、Servlet服务器的源代码、RMI、EJB、JNDI、面向方面编程、重构、ANT工具、Eclipse工具、Spring工具、JBoss、JOnAS、Apache Geronimo等J2EE服务器!研究了这些你可能会成为一个出色的J2EE Architecture!你可以继续研究剖析器、编译器、JNODE(java写的操作系统)……

更多精彩书单,请点击编程必备书单

  • 上一篇: Java基础类库实验
  • 下一篇: java基础高级篇
  • 版权声明


    相关文章:

  • Java基础类库实验2024-10-21 08:58:05
  • 零基础编写java2024-10-21 08:58:05
  • java趣味零基础教学2024-10-21 08:58:05
  • 没有基础可以学会java吗2024-10-21 08:58:05
  • java基础16节2024-10-21 08:58:05
  • java基础高级篇2024-10-21 08:58:05
  • 高淇_java基础300集2024-10-21 08:58:05
  • java面向对象编程的基础原理2024-10-21 08:58:05
  • java基础导出csv2024-10-21 08:58:05
  • java零基础创意广告2024-10-21 08:58:05