版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、.,Java語言基礎(第一講),Java語言簡介 面向?qū)ο蟮母拍?java面向?qū)ο蟪绦蛟O計的特點 類,包,接口 JAVA的開發(fā)環(huán)境 Eclipse簡介和使用,.,JAVA語言簡介,Java語言的起源 Java語言的特點 Java是 面 向 對 象 的 Java 是 簡 單 的 Java 是 安 全 的 Java 是 多線程 的 Java強大的網(wǎng)絡功能 Java 即解釋型的 Java 是 與平臺無關的,.,面 向 對 象的特性,編程語言的演化,匯編語言,過程式語言,oo語言,面向機器還是面向問題?,.,面向?qū)ο蠛兔嫦蜻^程的區(qū)別,面向過程就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步
2、實現(xiàn),使用的時候一個一個依次調(diào)用就可以了。 面向?qū)ο笫前褬嫵蓡栴}事務分解成各個對象,建立對象的目的不是為了完成一個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。,.,五子棋設計,面向過程的設計思路:首先分析問題的步驟:1、開始游戲,2、黑子先走,3、繪制畫面,4、判斷輸贏,5、輪到白子,6、繪制畫面,7、判斷輸贏,8、返回步驟2,9、輸出最后結果。把上面每個步驟用分別的函數(shù)來實現(xiàn),問題就解決了。 面向?qū)ο蟮乃悸罚赫麄€五子棋可以分為 1、黑白雙方,這兩方的行為是一模一樣的,2、棋盤系統(tǒng),負責繪制畫面,3、規(guī)則系統(tǒng),負責判定諸如犯規(guī)、輸贏等。第一類對象(玩家對象)負責接受用戶輸入,并告知
3、第二類對象(棋盤對象)棋子布局的變化,棋盤對象接收到了棋子的i變化就要負責在屏幕上面顯示出這種變化,同時利用第三類對象(規(guī)則系統(tǒng))來對棋局進行判定。,.,簡單的,Java的風格類似于c+,因而c+程序員初次接觸java語言就會感到很熟悉,能很快的掌握java編程技術。 Java摒棄了c+中容易引發(fā)程序錯誤的一些特性,如指針,結構,枚舉以及內(nèi)存管理等 Java提供了豐富的類庫,可以幫助我們方便的開發(fā)java程序。,.,安全的,Java刪除了指針和釋放內(nèi)存等c+功能,避免了非法內(nèi)存操作。 通過java 的安全體系進行保證。當我們從網(wǎng)上下載java代碼在本地 執(zhí)行時,java的安全架構能確保惡意的代
4、碼不能隨意訪問我們本地的資源,例如:刪除文件,訪問本地網(wǎng)絡資源等操作都是被禁止的。,.,多線程的,Java支持多線程 多線程好像我們做一張桌子,如果你一個人完成這張桌子就好像一個單線程,那么你需要先做桌面,做完桌面后,再做4個桌子腿,如果5個人來做在程序中開辟了5個線程,1人做桌面,另外4人分別做4個腿,那么這兩種方式效率的高低,相信大家能區(qū)分開了,.,解釋的,Java代碼是解釋執(zhí)行的,我們使用java編譯器將java代碼編譯成字節(jié)碼,這是一種中間代碼,然后由java 解釋器解釋執(zhí)行。而c+ 程序是編譯執(zhí)行的,c+代碼被編譯為本地機器指令,然后執(zhí)行。,.,與平臺無關的,Java 作為一種網(wǎng)絡語
5、言,其代碼被編譯成一種機構中立的中間文件格式。只要有java 運行系統(tǒng)的機器都能執(zhí)行這種 中間代碼。Java源程序被編譯成一種與機器無關的字節(jié)碼格式,在java虛擬機上運行,.,Java跨平臺的原理(1),Java的跨平臺是通過Java虛擬器(JVM)來實現(xiàn)的 JVM (Java Virtual Machine) Java虛擬器,把Java字節(jié)碼翻譯為計算機CPU能讀懂的語言。Java為了實現(xiàn)平臺無關性這個功能,專門設計了一個虛擬器,這樣使得Java的移植性很高。,.,Java虛擬機與運行環(huán)境,.,Java跨平臺的原理(2),編譯 下載 解釋 代碼的裝入 代碼的校驗 代碼的解釋 執(zhí)行 解釋執(zhí)行
6、:解釋器通過每次解釋并執(zhí)行一小段代碼來完成java程序的所有操作 優(yōu)點:即時,效率高,.,Java編譯和運行系統(tǒng)功能圖,編譯,源程序 (如hello-java),字節(jié)碼文件 Hello.class,網(wǎng)絡或本地,類裝載器,解釋器,字節(jié)碼 檢驗器,即時運行部件,運行系統(tǒng),創(chuàng)建,編譯,運行,.,面向?qū)ο蟮母拍?實體:現(xiàn)實世界中實實在在存在的事務 對象:是由現(xiàn)實世界中的事務抽象而來 對象的屬性 狀態(tài):即靜態(tài)屬性,主要指對象內(nèi)部包含的各種信息,即變量 行為:即動態(tài)屬性,主要是對象的操作, 其作用是設置或改變對象的狀態(tài),即函數(shù). 標志:為區(qū)分不同的對象,給對象打的標簽,即對象的名字. 在java中,現(xiàn)實世
7、界對象的狀態(tài)保存在軟件對象的變量中;現(xiàn)實世界的行為通過軟件對象的方法(函數(shù))來實現(xiàn)。,.,Class point int x,y; void output() System.out.println(x); System.out.println(y); ,.,類和對象,把相似的對象劃歸成一個類 在軟件中,類,就是一個模板,它定義了通用于一個特定種類的所有對象的狀態(tài)(變量)和行為(方法) 類是創(chuàng)建對象的模板,對象是類的實例,.,從程序設計的角度看,類是面向?qū)ο蟪绦蛟O計中最基本的程序單元,類實質(zhì)上定義的是一種數(shù)據(jù)類型,我們可以使用類名來聲明對象變量 聲明對象變量之后,還不能使用對象。必須用運算符ne
8、w創(chuàng)建對象實體之后,才能使用對象,.,Class point int x,y; void output() System.out.println(x); System.out.println(y); Class static void main(string:args) Point pt; Pt=new Point(); Pt.x=10; Pt.y=10; Pt.output(); ,.,面向?qū)ο蟮母拍?類, 對象與實體之間的關系,對象,實體,類,抽象數(shù)據(jù)類型,實例化,抽象,計算機世界,現(xiàn)實世界,概念世界,抽象,.,面向?qū)ο缶幊痰碾y點,掌握面向?qū)ο蟮睦щy之處在于思路的轉(zhuǎn)化 我們通常習慣于考慮解
9、決問題的方法,而不是考慮將問題抽象成對想再去解決它,.,一個簡單的例子,編寫一個五子棋游戲的方法 面向過程的程序設計 編寫一個方法,void Gobang (); 面向?qū)ο蟮某绦蛟O計: 抽象出三個類和各自的方法: 棋子類(Chessman),方法receive() 規(guī)則(Rule),方法judge() 繪制(Point) ,方法print(),.,java面向?qū)ο蟪绦蛟O計的特點,抽象:抽出與研究有關的數(shù)據(jù)以及針對這些數(shù)據(jù)的授權操作 封裝:利用一個自主式框架將數(shù)據(jù)和基于數(shù)據(jù)的操作編制在一起,形成一個對象 繼承:一個類直接使用另一個類的屬性和方法 關鍵詞:extends 單重繼承 多重繼承 多態(tài):
10、一個對外接口,多個內(nèi)在形式 覆蓋 重載,.,類(class),類:是對象的描述,是創(chuàng)建對象的模版,一般定義為: 類的修飾符class 類名 extends 父類名 類成員變量聲明 類方法聲明 類的修飾符: 訪問控制符:public 和缺省訪問控制符 抽象類:abstract 最終類:final 類修飾符之間的應用關系: 公共類可以抽象的: public abstract class Socket 公共類可以是final的:public final class Socket Abstract和final不能并列修飾同一個類 Abstract中不能有private成員,.,類(class),Imp
11、ort java.io.* public class simple public static void main(String args ) char c; System.out.print(“Enter a character please:”); try c=(char)Systerm.in.read(); catch(IOException e); System.out.print(“youve entered “+c); ,.,包(package),包:一種松散的類的集合,用來管理龐大的命名空間和避免沖突的工具. 在package語句中,用“.”來指明包(目錄)的層次。 創(chuàng)建包: p
12、ackage 包名 package Helloword,.,包(package),Import 語句 引入包中的類。 import java.io.File; 引入整個包 Import java.io.*; 在同一個包中的類可以相互引用,無需import語句,.,接口,接口:是方法定義和常量值的集合,用于解決多重繼承的問題.接口的一般定義格式如下: interface interfacenameextends superinterfacelist type constantName=value /常量說明 Return Type methodName(paramList)/方法說明 接口的實現(xiàn)
13、:class 類名 implements 接口名,.,JAVA的開發(fā)環(huán)境,JDK:即Java Develop Kit, Java開發(fā)工具包 J2SDK:java 2 software Develop kit,將類庫和相關開發(fā)工具以軟件包的形式提供給我們使用 JRE :即Java Runtime environment,是Java的運行環(huán)境,通常包含在J2SDK 中。如果我們僅僅是為了運行java程序,而不是從事java de 開發(fā),我們可以直接下載JRE ,在我們的系統(tǒng)上安裝 Javac java 編譯器 java java 解釋器 Java集成開發(fā)環(huán)境 JBuilder Netbean Ec
14、lipse 下載JDK, J2SDK地址 :http:/java ,.,Java 的開發(fā)工具包,J2SE(standard Edition) 桌面程序,程序 J2EE(Enterprise Edition) 企業(yè)級,大型程序,例如電子商務,網(wǎng)上保稅 J2ME(Micro Edition) 手持設備,手機上的小程序,PDA等,.,Eclipse簡介,Eclipse 是一個開放源代碼的、基于 Java 的可擴展開發(fā)平臺。 源代碼可免費下載() “一切皆是插件” 支持C/C+等變成語言,.,Eclipse的體系結構,.,安裝Eclipse及多國語言包,安裝JDK 下載J
15、DK( 運行下載的JDK的exe安裝文件,開始安裝JDK2 配置環(huán)境變量 JAVA_HOME (指明JDK安裝路徑 ) 設為: c:j2sdk1.4.2 Path (系統(tǒng)識別Java命令 ) 設為: %JAVA_HOME%bin;%JAVA_HOME%jrebin CLASSPATH (加載類路徑) 設為: .;C:j2sdk1.4.2libdt.jar;C:j2sdk1.4.2libtools.jar; C:j2sdk1.4.2jrelibrt.jar;C:j2sdk1.4.2jrelibcharsets.jar;C:j2sdk1.4.2jrelibjaws.jar 下載Eclipse軟件以
16、及多國語言包 官方網(wǎng)站:,.,Eclipse界面簡介(一),主菜單,工具欄,導航器視圖,任務視圖,編輯器,.,Eclipse界面簡介(二),整個窗口稱為Eclipse的工作臺 導航器視圖:顯示項目中的文件列表 大綱視圖:顯示當前編輯器打開文件的綱要 任務視圖:顯示代碼中未完成的任務 編輯器: 編寫代碼 透視圖有:由一些視圖,編輯器組成的集合,.,創(chuàng)建JAVA項目并運行(一),第一步:新建一個空Java項目,.,創(chuàng)建JAVA項目并運行(一),.,創(chuàng)建JAVA項目并運行(二),第二步:新建一個java類,.,創(chuàng)建JAVA項目并運行(二),.,創(chuàng)建JAVA項
17、目并運行(三),點擊運行按鈕,.,調(diào)試器的使用,.,SWT、JFace簡介,作用:用于Eclipse環(huán)境圖形界面的開發(fā) 插件開發(fā)包(SWT Designer)的下載 (http:/www.swt- 插件開發(fā)包(SWT Designer)的安裝,.,用SWT Designer寫一個Hello world,使用向?qū)Ы⒁粋€SWT/JFace Java項目,.,用SWT Designer寫一個Hello world,新建一個SWT 類文件,.,用SWT Designer寫一個Hello world,在主窗口加入一個文本組件,.,SWT 基本控件,標簽 Label label = new Label(parent, SWT.CENTER); label.setText(This is the label text); 文本 Text name = new Text(parent, SWT.SINGLE); name.setText(“”); name.setTextLim
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園安全教育實踐課件
- 特殊教育考證題庫及答案
- 機器學習在銀行營銷策略中的優(yōu)化
- 微練(19) 三類分布模型及應用
- 生物實驗創(chuàng)新試題及答案
- 地理信息智能處理算法
- 9月幼兒園安全教育課件
- 陜西省延安市洛川縣2025-2026學年二年級上冊期中考試語文試卷(含答案)
- 三角形全等條件課件
- 2025-2026學年統(tǒng)編版語文三年級上冊句子專項訓練卷(三)(專項訓練)(含答案)
- 2025年下半年貴州遵義市市直事業(yè)單位選調(diào)56人筆試考試備考題庫及答案解析
- 水電分包協(xié)議合同范本
- 2025重慶川儀自動化股份有限公司招聘56人筆試參考題庫附帶答案詳解(3卷合一版)
- 2025年初級社會工作者考試《社會工作綜合能力》真題及答案解析
- 貨架租用合同范本
- 還建房出售合同范本
- 2025年無人機航拍理論題庫(含答案)
- 安陽學院期末考試原題及答案
- 校園廣播站每日提醒培訓課件
- 2025年秋季學期國家開放大學《理工英語4》形考任務綜合測試完整答案(不含聽力部分)
- 中層競聘面試必-備技能與策略實戰(zhàn)模擬與案例分析
評論
0/150
提交評論