人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

所有方面認識JAVA

所有方面認識JAVA

更新時間:2022-07-26 文章作者:未知 信息來源:網絡 閱讀次數:

作SCJP培訓已經有一段時間了,到我這學習的有在校的大學生,也有在職的開發人員。通常這些學員此前都對Java已有一些了解,但普遍對Java缺乏總體的認識。于是學員總是問,Java應該怎么學?Java能做什么?什么是Applet?什么是Servlet、Jsp、EJB?還有Webspere、Weblogic又是做什么的等等。之所以學員會有這些疑問,是因為大家普遍對Java相關概念聽說的太多而了解的又相對少的緣故。

  學通Java語言需要一個過程,所有Java相關的概念都會在學習的過程中逐漸變得清昕。這個過程的開始就是要先學會標準的Java技術(J2SE),然后是學Java的簡單Web運用,然后分布式運用,再以后對Java的移動技術運用就很容易理解了。

  以下是Java標準技術的一些要點:

  一、Java的跨平臺性,即一次編譯到處運行

  簡單地說Java的跨平臺性就是指,編譯后的Java程序可直接在不同的平臺上運行而不用重新編譯,這一特性使得Java隨著Web應用的普及而迅速普及起來。而Java的跨平臺性是如何實現的呢?這就要理解Java虛擬機和字節碼的概念。

  實際上,編譯后的Java代碼并不是傳統的二進制代碼(如Windows下的.exe文件),而是Java字節碼,這種字節碼文件是不能直接在操作系統上執行的。要想在一個操作系統上運行一個Java程序必須有一個中間環節來負責將Java字節碼解釋成二進制碼,這個中間環節就是Java虛擬機(簡稱JVM)。由于目前大多數操作系統已經實現了JVM,所以Java輕松實現跨平臺性。

  二、面象對象技術

  Java全面支持面象對象技術,這體現在Class(類)是Java程序構成的基本單元,一個Java程序通常由許多Class組成,而且這些Class還會有一定的繼承關系,Java支持Class的單繼承,從而使類之間的繼承關系更明確。繼承的結果產生類的多態性,類的多態本質上講就是可以用父類的引用訪問繼承類的實現(子類對象),類的這種多態性最終形成了組件對象模型的基礎,即通過接口(父類)訪問實現(子類)。

  三、Java中的I/O操作

  Java中以字節流(InputStream和OutputStream)、節符流(Reader和Writer)來分別讀寫二進制數據和字符數據,使用非常簡單有效。Java類庫中的File類不僅提供文件操作而且還包含文件夾操作,如下面這幾行代碼可以列出C盤根目錄下的所有文件:

  File f=new File("c://");
  String [] m_dir= f.list();
  for(int i=0;i
  System.out.println(m_dir[i]);

  四、Java中的圖形及事件處理

  可以用awt包或swing包的Java類來進行大部分的Java圖形界面設計,下面的幾行代碼將產生一個200*200像素的窗體:

  Frame f=new Frame("Welcome");
  f.setSize(200,200);
  f.setVisible(true);

  默認情況下,Frame窗體的關閉按鈕不起作用,這也是Java初學者迷惑的地方。為了使用戶按下關閉按鈕時能關閉Frame窗體,需要讓這個窗體響應一個WindowEvent事件,具體的做法就是給這個窗體添加一個事件監聽器對象,這個事件監聽器就是WindowListener接口的實現。在上面的代碼中插入如下代碼就可以關閉窗體:

  f.addWindowListener(new WindowAdapter(){
  public void windowClosing(WindowEvent e){
  System.exit(0);
  }
  }

  這里用到一個無名內部類,無名內部類是Java中內部類的一種靈活運用方式。

  五、Java中線程及同步控制

  線程概念的引入是為了實現并行處理,從而提高程序的效率。Java中的線程實現非常簡單,可以用兩種方式來創建線程,一種是實現Runnable接口,另一種是繼承Thread類重寫run()方法。兩種方式唯一的不同就是前者保留了繼承一個類的可能(因為Java只支持類的單繼承,但接口沒有此限制)。

  永遠都用start()方法來啟動一個線程,線程類中的run()可以被直接調用,但決不是啟動一個線程,二者有著本質的區別。

  用同步控制關鍵字synchronized來保護線程敏感數據,synchronized塊中的內容可以保證同一時刻只能被一個線程訪問,所以其中的數據是線程安全的。

  用Object類中的wait()和notify()方法可以實現線程間交互,但要記住wait()和notify()方法只有發生在同一個對象上才能真正實現線程間交互。被某一對象wait()方法阻塞的線程需要另外一個調用了同一對象notify()的線程干預才能恢復運行。notify()方法一次喚醒一個被wait()方法阻塞的線程,notifyAll()方法可以一次喚醒所有被wait()方法阻塞的線程。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 和平县| 六盘水市| 木里| 夹江县| 揭西县| 新和县| 塔河县| 鄂托克旗| 卢氏县| 石狮市| 伊金霍洛旗| 平度市| 泽库县| 白城市| 井研县| 秀山| 怀安县| 金山区| 新巴尔虎右旗| 瑞丽市| 涿鹿县| 开原市| 佛学| 金门县| 镇江市| 望奎县| 卢龙县| 泸西县| 曲松县| 兴文县| 武胜县| 长岛县| 手游| 四会市| 大名县| 绥阳县| 松江区| 南充市| 临西县| 双牌县| 原平市|