Submit Search
Upload
Java平台概論
•
1 like
•
2,398 views
Justin Lin
Follow
簡介Java版本遷移 認識Java SE、Java EE、Java ME 認識JDK規範與實作 瞭解JVM、JRE與JDK 下載、安裝JDK
Read less
Read more
Technology
Report
Share
Report
Share
1 of 45
Download now
Download to read offline
Recommended
CH1:Java平台概論
CH1:Java平台概論
Justin Lin
簡介Java版本遷移 認識Java SE、Java EE、Java ME 認識JDK規範與實作 瞭解JVM、JRE與JDK 下載、安裝JDK
Java SE 7 技術手冊試讀 - Java 平台概論
Java SE 7 技術手冊試讀 - Java 平台概論
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Justin Lin
Java SE 7 技術手冊
CH02:從JDK到IDE
CH02:從JDK到IDE
Justin Lin
學習目標 瞭解與設定PATH 瞭解與指定CLASSPATH、SOURCEPATH 使用package與import管理類別 初探模組平台系統 認識JDK與IDE的對應
Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論
Justin Lin
簡介Java版本遷移 認識Java SE、Java EE、Java ME 認識JDK規範與實作 瞭解JVM、JRE與JDK 下載、安裝JDK
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
Justin Lin
這個投影片是搭配《Java Tutorial》課程,你可以在 CodeData 上看到所有內容,也可以直接在 Google Play 或 Pubu 上搜尋 "Java Tutorial" 以購得電子書。
CH19:深入模組化
CH19:深入模組化
Justin Lin
認識模組的種類 處理模組依賴與封裝細節 使用模組API 建立JAR、JMOD與JIMAGE
深入模組化
深入模組化
Justin Lin
認識模組的種類 處理模組依賴與封裝細節 使用模組API 建立JAR、JMOD與JIMAGE
Recommended
CH1:Java平台概論
CH1:Java平台概論
Justin Lin
簡介Java版本遷移 認識Java SE、Java EE、Java ME 認識JDK規範與實作 瞭解JVM、JRE與JDK 下載、安裝JDK
Java SE 7 技術手冊試讀 - Java 平台概論
Java SE 7 技術手冊試讀 - Java 平台概論
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Java SE 7 技術手冊投影片第 01 章 - Java平台概論
Justin Lin
Java SE 7 技術手冊
CH02:從JDK到IDE
CH02:從JDK到IDE
Justin Lin
學習目標 瞭解與設定PATH 瞭解與指定CLASSPATH、SOURCEPATH 使用package與import管理類別 初探模組平台系統 認識JDK與IDE的對應
Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論
Justin Lin
簡介Java版本遷移 認識Java SE、Java EE、Java ME 認識JDK規範與實作 瞭解JVM、JRE與JDK 下載、安裝JDK
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
Justin Lin
這個投影片是搭配《Java Tutorial》課程,你可以在 CodeData 上看到所有內容,也可以直接在 Google Play 或 Pubu 上搜尋 "Java Tutorial" 以購得電子書。
CH19:深入模組化
CH19:深入模組化
Justin Lin
認識模組的種類 處理模組依賴與封裝細節 使用模組API 建立JAR、JMOD與JIMAGE
深入模組化
深入模組化
Justin Lin
認識模組的種類 處理模組依賴與封裝細節 使用模組API 建立JAR、JMOD與JIMAGE
Servlet & JSP 教學手冊第二版 - 第 12 章:從模式到框架
Servlet & JSP 教學手冊第二版 - 第 12 章:從模式到框架
Justin Lin
Servlet & JSP 教學手冊第二版
Java SE 7 技術手冊投影片第 02 章 - 從JDK到IDE
Java SE 7 技術手冊投影片第 02 章 - 從JDK到IDE
Justin Lin
Java SE 7 技術手冊
2. 從 REPL 到 IDE
2. 從 REPL 到 IDE
Justin Lin
使用 REPL 設定原始碼檔案編碼 基本模組與套件管理 認識 IDE 的使用
CH17:反射與類別載入器
CH17:反射與類別載入器
Justin Lin
取得.class檔案資訊 動態生成物件與操作方法 認識模組與反射的權限設定 瞭解JDK9類別載入器階層 使用ClassLoader實例
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Justin Lin
Java SE 7 技術手冊
1, java intro
1, java intro
ted-xu
Java programming language introduction
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Justin Lin
瞭解與設定PATH 瞭解與指定CLASSPATH 瞭解與指定SOURCEPATH 使用package與import管理類別 初步認識JDK與IDE的對應
Java SE 7 技術手冊投影片第 05 章 - 物件封裝
Java SE 7 技術手冊投影片第 05 章 - 物件封裝
Justin Lin
Java SE 7 技術手冊
Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
使用Tag File自訂標籤 • 使用Simple Tag自訂標籤 • 使用Tag自訂標籤
CH16:整合資料庫
CH16:整合資料庫
Justin Lin
了解JDBC架構 使用JDBC API 瞭解交易與隔離層級 認識RowSet
自訂泛型、列舉與標註
自訂泛型、列舉與標註
Justin Lin
進階自訂泛型 進階自訂列舉 使用標準標註 自訂與讀取標註
Redux+react js
Redux+react js
國昭 張
introduce how to mix ReactJs and Redux in practice
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Justin Lin
Java SE 7 技術手冊
Java类加载器
Java类加载器
Fu Cheng
关于java 类加载器(class loader)的介绍
CH11:執行緒與並行API
CH11:執行緒與並行API
Justin Lin
認識Thread與Runnable 使用synchronized 使用wait()、notify()、notifyAll() 運用高階並行API
Entity Framework實戰
Entity Framework實戰
國昭 張
深入描述Entity Framework的DB First
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Justin Lin
Servlet & JSP 教學手冊第二版
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Justin Lin
Servlet & JSP 教學手冊第二版
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Justin Lin
了解JDBC架構 使用JDBC API 瞭解交易與隔離層級 認識RowSet
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Justin Lin
Servlet & JSP 教學手冊第二版
必备的 Java 参考资源列表
必备的 Java 参考资源列表
wensheng wei
Android工作坊
Android工作坊
國立政治大學 數位內容碩士學位學程
de
More Related Content
What's hot
Servlet & JSP 教學手冊第二版 - 第 12 章:從模式到框架
Servlet & JSP 教學手冊第二版 - 第 12 章:從模式到框架
Justin Lin
Servlet & JSP 教學手冊第二版
Java SE 7 技術手冊投影片第 02 章 - 從JDK到IDE
Java SE 7 技術手冊投影片第 02 章 - 從JDK到IDE
Justin Lin
Java SE 7 技術手冊
2. 從 REPL 到 IDE
2. 從 REPL 到 IDE
Justin Lin
使用 REPL 設定原始碼檔案編碼 基本模組與套件管理 認識 IDE 的使用
CH17:反射與類別載入器
CH17:反射與類別載入器
Justin Lin
取得.class檔案資訊 動態生成物件與操作方法 認識模組與反射的權限設定 瞭解JDK9類別載入器階層 使用ClassLoader實例
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Justin Lin
Java SE 7 技術手冊
1, java intro
1, java intro
ted-xu
Java programming language introduction
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Justin Lin
瞭解與設定PATH 瞭解與指定CLASSPATH 瞭解與指定SOURCEPATH 使用package與import管理類別 初步認識JDK與IDE的對應
Java SE 7 技術手冊投影片第 05 章 - 物件封裝
Java SE 7 技術手冊投影片第 05 章 - 物件封裝
Justin Lin
Java SE 7 技術手冊
Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
使用Tag File自訂標籤 • 使用Simple Tag自訂標籤 • 使用Tag自訂標籤
CH16:整合資料庫
CH16:整合資料庫
Justin Lin
了解JDBC架構 使用JDBC API 瞭解交易與隔離層級 認識RowSet
自訂泛型、列舉與標註
自訂泛型、列舉與標註
Justin Lin
進階自訂泛型 進階自訂列舉 使用標準標註 自訂與讀取標註
Redux+react js
Redux+react js
國昭 張
introduce how to mix ReactJs and Redux in practice
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Justin Lin
Java SE 7 技術手冊
Java类加载器
Java类加载器
Fu Cheng
关于java 类加载器(class loader)的介绍
CH11:執行緒與並行API
CH11:執行緒與並行API
Justin Lin
認識Thread與Runnable 使用synchronized 使用wait()、notify()、notifyAll() 運用高階並行API
Entity Framework實戰
Entity Framework實戰
國昭 張
深入描述Entity Framework的DB First
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Justin Lin
Servlet & JSP 教學手冊第二版
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Justin Lin
Servlet & JSP 教學手冊第二版
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Justin Lin
了解JDBC架構 使用JDBC API 瞭解交易與隔離層級 認識RowSet
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Justin Lin
Servlet & JSP 教學手冊第二版
What's hot
(20)
Servlet & JSP 教學手冊第二版 - 第 12 章:從模式到框架
Servlet & JSP 教學手冊第二版 - 第 12 章:從模式到框架
Java SE 7 技術手冊投影片第 02 章 - 從JDK到IDE
Java SE 7 技術手冊投影片第 02 章 - 從JDK到IDE
2. 從 REPL 到 IDE
2. 從 REPL 到 IDE
CH17:反射與類別載入器
CH17:反射與類別載入器
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
1, java intro
1, java intro
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 8 技術手冊第 2 章 - 從JDK到IDE
Java SE 7 技術手冊投影片第 05 章 - 物件封裝
Java SE 7 技術手冊投影片第 05 章 - 物件封裝
Ch08 自訂標籤
Ch08 自訂標籤
CH16:整合資料庫
CH16:整合資料庫
自訂泛型、列舉與標註
自訂泛型、列舉與標註
Redux+react js
Redux+react js
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java类加载器
Java类加载器
CH11:執行緒與並行API
CH11:執行緒與並行API
Entity Framework實戰
Entity Framework實戰
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Servlet & JSP 教學手冊第二版 - 第 8 章:自訂標籤
Similar to Java平台概論
必备的 Java 参考资源列表
必备的 Java 参考资源列表
wensheng wei
Android工作坊
Android工作坊
國立政治大學 數位內容碩士學位學程
de
Nashorn on JDK 8 (ADC2013)
Nashorn on JDK 8 (ADC2013)
Kris Mok
Brief introduction of Nashorn on JDK 8. Delivered at ADC 2013 (http://adc.alibabatech.org/), on July 14, 2013. Full version of slides coming soon.
2. java introduction
2. java introduction
netdbncku
Weic2015 docker
Weic2015 docker
Ray Lin
WEIC 2015 Docker Introduction TA: Student
给学习J2 Ee的朋友一些值得研究的开源项目
给学习J2 Ee的朋友一些值得研究的开源项目
yiditushe
[圣思园][Java SE]001 java se 第一讲(java se入门、jdk的下载与安装、第一个java程序、java程序的编译与执行)
[圣思园][Java SE]001 java se 第一讲(java se入门、jdk的下载与安装、第一个java程序、java程序的编译与执行)
ArBing Xie
第一章 概述和Jdk的安装和配置
第一章 概述和Jdk的安装和配置
yinmei1983
拥抱开源-关于程序员的自我提高
拥抱开源-关于程序员的自我提高
Yihua Huang
Embrace open source.
初探程式語言設計以C#為例
初探程式語言設計以C#為例
Johnson Gau
程式設計對我們有何幫助? 認識程式語言發展史 讓我們寫一個好程式,以C#為例
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探
美团点评技术团队
React Native 的出现给了原生应用一个新的选择。我们为什么选择 React?在将 React 集成到一个成熟应用的过程中我们遇到了哪些挑战又是如何解决的呢?我们在这里试着给出一个答案。
深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做
SAS TW
完整教學資料下載 >> https://goo.gl/qBZ3xH 深度學習(Deep learning)的目標:Deep learning並不是解決特定問題的方法,而是試圖去model data中的概念 深度學習(Deep learning)起源與概論: *人腦是採分層的方式在進行認知 *以人看到物體為例,當人在看到人臉時 *大腦會先認出臉的邊(edge) *再認出臉的輪廓(object part) *接著再認出整個臉(object model) *這樣的認知過程,是一個不斷的進行迭代,抽象的過程 *Deep Learning受到人腦運作模式的啟發,模仿人腦的運作過程來進行學習
從 Java programmer 的觀點看 ruby
從 Java programmer 的觀點看 ruby
建興 王
RubyConf Taiwan 2011
Google app engine安裝教學
Google app engine安裝教學
勝億 曾
雲端運算
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Justin Lin
Java SE 7 技術手冊
Java 推荐读物
Java 推荐读物
yiditushe
Java 案例实战(一)
Java 案例实战(一)
lovebirdegg
Java2新觀念教本投影片ch1
Java2新觀念教本投影片ch1
5045033
software development guide map
software development guide map
biaowei zhuang
软件开发导游图
深入淺出Node.JS
深入淺出Node.JS
國昭 張
從無到有的介紹Node.Js,並且引入實務範例
Similar to Java平台概論
(20)
必备的 Java 参考资源列表
必备的 Java 参考资源列表
Android工作坊
Android工作坊
Nashorn on JDK 8 (ADC2013)
Nashorn on JDK 8 (ADC2013)
2. java introduction
2. java introduction
Weic2015 docker
Weic2015 docker
给学习J2 Ee的朋友一些值得研究的开源项目
给学习J2 Ee的朋友一些值得研究的开源项目
[圣思园][Java SE]001 java se 第一讲(java se入门、jdk的下载与安装、第一个java程序、java程序的编译与执行)
[圣思园][Java SE]001 java se 第一讲(java se入门、jdk的下载与安装、第一个java程序、java程序的编译与执行)
第一章 概述和Jdk的安装和配置
第一章 概述和Jdk的安装和配置
拥抱开源-关于程序员的自我提高
拥抱开源-关于程序员的自我提高
初探程式語言設計以C#為例
初探程式語言設計以C#為例
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探
深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做
從 Java programmer 的觀點看 ruby
從 Java programmer 的觀點看 ruby
Google app engine安裝教學
Google app engine安裝教學
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Java SE 7 技術手冊投影片第 07 章 - 介面與多型
Java 推荐读物
Java 推荐读物
Java 案例实战(一)
Java 案例实战(一)
Java2新觀念教本投影片ch1
Java2新觀念教本投影片ch1
software development guide map
software development guide map
深入淺出Node.JS
深入淺出Node.JS
More from Justin Lin
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
認識 Spring Boot 認識 Spring Tool Suite 遷移微網誌至 Spring Boot
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
區別程式庫與框架 逐步善用 Spring MVC 簡介 Thymeleaf 模版 使用 Spring Security
Ch12 Spring 起步走
Ch12 Spring 起步走
Justin Lin
使用 Gradle 結合 Gradle 與 IDE 認識相依注入 使用 Spring 核心
Ch11 簡介 JavaMail
Ch11 簡介 JavaMail
Justin Lin
寄送純文字郵件 寄送 HTML 郵件 寄送附檔郵件
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Justin Lin
了解 Java EE 安全概念與名詞 使用容器基本驗證與表單驗 使用 HTTPS 保密資料傳輸
Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
了解 JDBC 架構 使用基本的 JDBC 透過 JNDI 取得DataSource 在 Web 應用程式整合資料庫
Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
使用 Tag File 自訂標籤 使用 Simple Tag 自訂標籤 使用 Tag 自訂標籤
Ch07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
了解何謂 JSTL 使用 JSTL 核心標籤庫 使用 JSTL 格式標籤庫 使用 JSTL XML 標籤庫 使用 JSTL 函式標籤庫
Ch06 使用 JSP
Ch06 使用 JSP
Justin Lin
了解 JSP 生命週期 使用 JSP 語法元素 使用 JSP 標準標籤 使用運算式語言(EL) 自訂 EL 函式
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
了解 Servlet 生命週期 使用 ServletConfig 與ServletContext 使用 PushBuilder 各種傾聽器的使用 繼承 HttpFilter 實作過濾器
Ch04 會話管理
Ch04 會話管理
Justin Lin
了解會話管理基本原理 使用 Cookie 類別 使用 HttpSession 會話管理 了解容器會話管理原理
Ch03 請求與回應
Ch03 請求與回應
Justin Lin
取得請求參數與標頭 處理中文字元請求與回應 設定與取得請求範圍屬性 使用轉發、包含、重新導向
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
開發環境準備與使用 了解 Web 應用程式架構 Servlet 撰寫與部署設定 了解 URI 模式對應 使用 web-fragement.xml
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
Justin Lin
認識 HTTP 基本特性 了解何為 URI 編碼 認識 Web 容器角色 了解 Servlet 與 JSP 的關係 認識 MVC/Model 2
14. 進階主題
14. 進階主題
Justin Lin
運用描述器 實作裝飾器 定義 meta 類別 使用相對匯入 泛型進階
13.並行、平行與非同步
13.並行、平行與非同步
Justin Lin
認識並行、平行與非同步 使用 threading 模組 使用 multiprocessing 模組 使用 concurrent.futures模組 運用 async、await 與 asyncio
12. 除錯、測試與效能
12. 除錯、測試與效能
Justin Lin
使用 pdb 模組除錯 對程式進行單元測試 使用 timeit 評測程式片段 使用 cProfile(profile)察看評測數據
11. 常用內建模組
11. 常用內建模組
Justin Lin
處理日期與時間 認識日誌的使用 運用規則表示式 管理檔案與目錄 URL 處理
10. 資料永續與交換
10. 資料永續與交換
Justin Lin
使用 pickle 與 shelve 認識 DB-API 2.0 使用 sqlite3 模組 處理 CSV、JSON、XML
9. 資料結構
9. 資料結構
Justin Lin
認識 hashable、iterable、orderable 對物件進行排序 認識群集架構 運用 collections 模組 運用 collections.abc 模組
More from Justin Lin
(20)
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Ch12 Spring 起步走
Ch12 Spring 起步走
Ch11 簡介 JavaMail
Ch11 簡介 JavaMail
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Ch09 整合資料庫
Ch09 整合資料庫
Ch08 自訂標籤
Ch08 自訂標籤
Ch07 使用 JSTL
Ch07 使用 JSTL
Ch06 使用 JSP
Ch06 使用 JSP
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch04 會話管理
Ch04 會話管理
Ch03 請求與回應
Ch03 請求與回應
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
14. 進階主題
14. 進階主題
13.並行、平行與非同步
13.並行、平行與非同步
12. 除錯、測試與效能
12. 除錯、測試與效能
11. 常用內建模組
11. 常用內建模組
10. 資料永續與交換
10. 資料永續與交換
9. 資料結構
9. 資料結構
Java平台概論
1.
1
2.
Java平台概論 學習目標 • 簡介Java版本遷移 • 認識Java
SE、Java EE、Java ME • 認識JDK規範與實作 • 瞭解JVM、JRE與JDK • 下載、安裝JDK 2
3.
Java不只是語言 • 從1995年至今,已經超過15個年頭 • 不僅是個程式語言,也代表瞭解決問題的平 台(Platform) •
代表了原廠、各個廠商、社群、開發者與使 用者溝通的成果 3
4.
Java誕生 • Java最早是Sun公司「綠色專案」(Green Project)中撰寫Star7應用程式的程式語言, 當時名稱不是Java,而是取名為Oak • 後來發現Oak名稱已經被註冊了,工程師們 邊喝咖啡邊討論著新名稱,最後靈機一動而 改名為Java 4
5.
Java誕生 • 一開始是為了消費性數位產品而設計,而這 類小型裝置通常有著有限記憶體與運算資源 – Java本身會見到許多為了節省資源而作的設計, 像是動態載入類別檔案、字串池(String
pool) 等特性 • 全球資訊網(World Wide Web)興起,Java Applet成為網頁互動技術代表 5
6.
Java誕生 • 1995年5月23 日,正式將 Oak改名為Java,Java Development
Kits(當時 JDK全名)1.0a2版本正式 對外發表 • 1996年Netscape Navigator 2.0也正式支援Java, Microsoft Explorer亦開始 支援Java 6
7.
版本演進 • Sun在1998/12/4年發佈Java 2
Platform,簡稱 J2SE 1.2 • Java開發者版本一開始是以Java Development Kit名稱發表,簡稱JDK,而J2SE則是平台名 稱,包含了JDK與Java程式語言 7
8.
版本演進 • Java平台標準版約每兩年為週期推出重大版 本更新 • 「Java
2」這個名稱也從J2SE 1.2一直延用至 之後各個版本 8
9.
版本演進 • 2004/9/29發表的Java平台標準版的版號不是 1.5,而直接跳到5.0,稱為J2SE 5.0 •
2006/12/11發表的Java平台標準版,除了版號 之外,名稱也有了變化,稱為Java Platform, Standard Edition 6,簡稱Java SE 6 • JDK6全名則稱為Java SE Development Kit 6, 也就是不再像以前Java 2帶有"2"這個號碼 9
10.
10
11.
江山易主 • 從Java SE
6之後,Java開發人員足足等了四 年多,才等到新版本的推出 … • 2010年Oracle宣佈併購Sun … • 2010年底JCP(Java Community Process,稍 後即會說明這個組織為何)終於通過了Java SE 7與Java SE 8的規劃地圖(Roadmap) … • Java SE 7於2011/7/28釋出 11
12.
三大平台 • Sun公司在1999年6月美國舊金山的Java One 大會上,公佈了新的Java體系架構 –
J2SE(Java 2 Platform, Standard Edition) – J2EE(Java 2 Platform, Enterprise Edition) – J2ME(Java 2 Platform, Micro Edition) 12
13.
三大平台 • Java SE
6後Java不再帶有“2”這個號碼 – J2SE Java SE – J2EE Java EE – J2ME Java ME 13
14.
Java SE 14
15.
JCP與JSR • Java不僅是程式語言,而是標準規範! • Sun公司於1998年組成了JCP(Java Community
Process) – 一個開放性國際組織,目的是讓Java演進由Sun 非正式地主導,成為全世界數以百計代表成員公 開監督的過程 15
16.
JCP與JSR • 任何想要提議加入Java的功能或特性,必須 以JSR(Java Specification
Requests)正式文 件的方式提交 • JSR必須經過JCP執行委員會(Executive Committee)投票通過,方可成為最終標準文 件 • 有興趣的廠商或組織可以根據JSR實現產品 16
17.
JCP與JSR • 若JSR成為最終文件後,必須根據JSR實作出 免費且開發原始碼的參考實現,稱為RI (Reference Implementation) •
提供TCK(Technology Compatibility Kit)作 為技術相容測試工具箱 – 方便其它想根據JSR實現產品的廠商或組織參考 與測試相容性 17
18.
JCP與JSR • 無論是Java SE、Java EE或Java
ME,都是業 界共同訂製的標準 • JSR作為正式標準規範 文件,不同的技術解決 方案標準規範會給予一 個編號 • 在JSR規範的標準之下, 各廠商可以各自實作成 品 18
19.
JCP與JSR • Java SE
8的主要規範是在JSR 337文件之中, 而Java SE平台中的特定技術,則再規範於特 定的JSR文件之中… – http://jcp.org/en/jsr/detail?id=337 19
20.
Oracle JDK與OpenJDK • 在過去,Sun
JDK實現,也就是被Oracle收購 之後的Oracle JDK實現,就是JDK的參考實作 • 有興趣的廠商或組織也可以根據JSR自行實 現產品 • 只有通過TCK 相容性測試的實作,才可以使 用Java這個商標 20
21.
Oracle JDK與OpenJDK • 2006年的JavaOne大會上,Sun宣告對Java開 放原始碼,從JDK7
b10 開始有了OpenJDK • 2009年4月15日正式發佈 OpenJDK • Oracle時代發佈的JDK7正式版本,指定了 OpenJDK7為官方參考實作 21
22.
Oracle JDK7與OpenJDK7 • Sun
JDK採JRL,而 OpenJDK7採GPL(帶有 GPL linking exception的修正版本) • 前者原始碼可用於個人研究使用,但禁止任 何商業用途,後者則允許商業上的使用 • OpenJDK7必須拿掉許多在兩個授權間有衝突 的程式碼,也不包括一些部署(Deployment) 工具以及軟體套件等 22
23.
Oracle JDK7與OpenJDK7 • 如果執行java
-version,原始的OpenJDK7顯 示的會是openjdk version字樣,而不是java version字樣 • Red Hat於2007年發起了 IcedTea 計畫,致力 於修補OpenJDK7使之完備,並通過了JCK相 容測試 • 如果使用IcedTea修補過後的OpenJDK7,執 行java -version,就會顯示java version字樣 23
24.
Open JDK7與OpenJDK6 • OpenJDK6並不是Sun
JDK6的分支,而是將 OpenJDK7中JDK7的特性拿掉,使之符合 JDK6的規範 • OpenJDK6實際上是OpenJDK7的分支, OpenJDK6可以通過JCK相容測試 24
25.
Open JDK7與OpenJDK6 • Oracle在2013年2月時宣佈JDK6
Update 43時, 宣佈這是最後一個免費更新版本 • Red Hat於 2013年3月時宣布持有 OpenJDK6 領導權,以能持續對OpenJDK6發現的臭蟲與 安全問題進行修補 25
26.
建議的學習路徑 • www.oracle.com/technetwork/topics/newtojava/i ntro-142494.html 26
27.
建議的學習路徑 • 深入瞭解JVM/JRE/JDK • 理解封裝、繼承、多型 •
掌握常用Java SE API架 構 • 學習容器觀念 • 研究開放原始碼專案 • 學習設計模式與重構 • 熟悉相關開發工具 27
28.
JVM/JRE/JDK 28
29.
什麼是JVM? • JVM讓Java可以跨平台,但是跨平台是怎麼 一回事? 29
30.
什麼是JVM? 30
31.
什麼是JVM? 31
32.
什麼是JVM? • 對Java程式而言,只認識一種作業系統,這 個系統叫JVM,位元碼檔案(副檔名為.class 的檔案)就是JVM的可執行檔。 – Java程式理想上,並不用理會真正執行於哪個平 台,只要知道如何執行於JVM就可以了 –
JVM實際上就相當於Java程式的作業系統,JVM 就負責了Java程式的各種資源管理 32
33.
區分JRE與JDK • System、out、println這些名稱,都是標準中 規範的名稱 • 實際上必須要有人根據標準撰寫出 System.java,編譯為System.class •
你才能在撰寫第一個Java程式時,使用 System類別(Class)上out物件(Object) 的println()方法(Method) 33
34.
區分JRE與JDK • 廠商必須根據相關的JSR標準文件,將標準 程式庫實作出來 • 如此你撰寫的第一個Java程式,在Sun、IBM、 Apache等廠商實作的JVM上運行時,引用如 System這些標準API,你的第一個Java程式, 才可能輕易地運行在不同的平台 34
35.
區分JRE與JDK • Java Runtime
Environment就是Java執行環境, 簡稱JRE,包括了Java SE API與JVM 35
36.
區分JRE與JDK • 像編譯器這樣的工具程式是由誰提供?答案 就是JDK,全名為Java Developer
Killer!呃! 不對!是Java Development Kit! 36
37.
區分JRE與JDK • JDK包括了Java程式語言、工具程式與JRE • JRE則包括了部署技術、Java
SE API與JVM • 撰寫Java程式才需要JDK,如果你的程式只 是想讓朋友執行?那他只要裝JRE就可以了 37
38.
下載、安裝JDK 38
39.
下載、安裝JDK 39
40.
下載、安裝JDK 40
41.
認識JDK安裝內容 • 假設JDK與Public JRE各安裝至「C:Program FilesJavajdk-9」及「C:Program FilesJavajre-9」 41
42.
認識JDK安裝內容 • Public JRE是給Java程式執行的平台 •
JDK本身也附帶JRE • Java SE 9改變了JDK與Public JRE資料夾內容 • JDK安裝資料夾中沒有專用的jre資料夾來放 Private JRE了 42
43.
認識JDK安裝內容 43
44.
認識JDK安裝內容 • 那麼Java SE
API編譯好的.class檔放在哪呢? – Java SE 9的模組平臺系統為了改進效能、安全與 維護性,使用了模組執行時期映像(Modular Run-Time Images),又稱JIMAGE – 無論是JDK或Public JRE的資料夾中,都會有個 lib資料夾,其中有個modules檔案,其中包含 了.class檔案的執行時期格式 44
45.
• 在編譯時期,Java SE
9引入了新的JMOD格 式來封裝模組,副檔名為.jmod • 這些檔案位於JDK資料夾中的jmods資料夾, 每個模組對應的.jmod中就包括了編譯完成的 .class檔案 45
Download now