[高等教育]第8章 面象對象—接口、內(nèi)部類與包ppt課件_第1頁
[高等教育]第8章 面象對象—接口、內(nèi)部類與包ppt課件_第2頁
[高等教育]第8章 面象對象—接口、內(nèi)部類與包ppt課件_第3頁
[高等教育]第8章 面象對象—接口、內(nèi)部類與包ppt課件_第4頁
[高等教育]第8章 面象對象—接口、內(nèi)部類與包ppt課件_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第第8 8章章 接口、內(nèi)部類與包接口、內(nèi)部類與包本章目的本章目的掌握接口的概念與定義掌握接口的概念與定義了解掌握接口的運用及與籠統(tǒng)類的區(qū)別了解掌握接口的運用及與籠統(tǒng)類的區(qū)別掌握內(nèi)部類的概念與定義掌握內(nèi)部類的概念與定義了解掌握內(nèi)部類與外部類的相互訪問以及了解掌握內(nèi)部類與外部類的相互訪問以及 內(nèi)部類的特殊運用內(nèi)部類的特殊運用掌握包的概念與自定義包的創(chuàng)建掌握包的概念與自定義包的創(chuàng)建掌握運用掌握運用jar命令打包生成可執(zhí)行的命令打包生成可執(zhí)行的jar文件包文件包最終類的概念最終類的概念假設一個類被聲明為假設一個類被聲明為final,那么意味著它不能再派,那么意味著它不能再派生新的子類。生新的子類。fi

2、nal class name第第8 8章章 最終類最終類最終方法最終方法假設類中的方法不希望被子類修正,那么可以把方假設類中的方法不希望被子類修正,那么可以把方法定義成最終方法。法定義成最終方法。final int add( ) final類不能被承繼類不能被承繼final 方法不能被覆蓋。方法不能被覆蓋。final常量不能被修正。常量不能被修正。第第8 8章章 最終類最終類籠統(tǒng)方法籠統(tǒng)方法假設一個方法只需方法聲明,而沒有方法體,那么假設一個方法只需方法聲明,而沒有方法體,那么該方法是籠統(tǒng)方法。有關(guān)鍵字該方法是籠統(tǒng)方法。有關(guān)鍵字abstract修飾。修飾。abstract int add(in

3、t x, int y); 籠統(tǒng)方法在承繼機制中必需被子類覆蓋。除非子類籠統(tǒng)方法在承繼機制中必需被子類覆蓋。除非子類中該方法也是籠統(tǒng)方法。中該方法也是籠統(tǒng)方法。第第8 8章章 籠統(tǒng)類籠統(tǒng)類籠統(tǒng)類籠統(tǒng)類包含籠統(tǒng)方法的類是籠統(tǒng)類,有包含籠統(tǒng)方法的類是籠統(tǒng)類,有abstract修飾。修飾。abstract class A成員變量;成員變量;成員方法;可以是普通方法,也可以是籠統(tǒng)成員方法;可以是普通方法,也可以是籠統(tǒng)方法方法籠統(tǒng)類不能實例化對象,所以沒有構(gòu)造方法。籠統(tǒng)類不能實例化對象,所以沒有構(gòu)造方法。第第8 8章章 籠統(tǒng)類籠統(tǒng)類接口的概念接口的概念接口主要作用是實現(xiàn)類似于接口主要作用是實現(xiàn)類似于C+類

4、的多重承繼的功類的多重承繼的功能能在在Java中,出于簡化程序構(gòu)造的思索,不再支持類中,出于簡化程序構(gòu)造的思索,不再支持類間的多重承繼而只支持單重承繼,即一個類至多只能間的多重承繼而只支持單重承繼,即一個類至多只能有一個直接父類,構(gòu)造簡單,層次明晰;有一個直接父類,構(gòu)造簡單,層次明晰;然而在處理實踐問題的過程中,僅僅依托單重承繼然而在處理實踐問題的過程中,僅僅依托單重承繼在很多情況下都不能將問題的復雜性表述完好;在很多情況下都不能將問題的復雜性表述完好;Java經(jīng)過接口機制與單一承繼實現(xiàn)了多重承繼的功經(jīng)過接口機制與單一承繼實現(xiàn)了多重承繼的功能能第第8 8章章 面象對象面象對象接口、內(nèi)部類與包接

5、口、內(nèi)部類與包接口的概念接口的概念當一個類中一切的方法都是籠統(tǒng)方法時,該類就是當一個類中一切的方法都是籠統(tǒng)方法時,該類就是接口。接口。abstract class Animalpublic abstract void move(); public abstract void cry(); interface Animal常量;常量;public void move(); public void cry(); 第第8 8章章 面象對象面象對象接口、內(nèi)部類與包接口、內(nèi)部類與包 8.1 .1 8.1 .1 接口聲明接口聲明public interface 接口名接口名 extends 父接口名列父接

6、口名列表表 變量聲明;變量聲明; /常量常量 方法聲明;方法聲明; /籠統(tǒng)方法籠統(tǒng)方法 接口聲明的普通方式:接口聲明的普通方式:接口:是沒有實現(xiàn)的方法和常量的集合,聲明接口:是沒有實現(xiàn)的方法和常量的集合,聲明格式如下:格式如下: 沒有沒有public只可以被同一個包的類承繼,只可以被同一個包的類承繼,否那么,可以被一切類承繼;否那么,可以被一切類承繼; 一個一個java文件中最多只能有一個文件中最多只能有一個public的類的類或接口,有或接口,有public的類或接口時,編譯單的類或接口時,編譯單必需與這個類或接口同名;必需與這個類或接口同名;public interface 接口名接口名

7、extends 父接口名列表父接口名列表 變量聲明;變量聲明; /常量常量 方法聲明;方法聲明; /籠統(tǒng)方法籠統(tǒng)方法 關(guān)于接口的幾點闡明關(guān)于接口的幾點闡明 被聲明的變量總是被視為static和final的,必需在聲明時給定初值,相當于常量; 接口中的的方法總是abstract的,聲明時缺省也有效。與籠統(tǒng)類一樣,接口不需求構(gòu)造方法public interface 接口名接口名 extends 父接口名列表父接口名列表 變量聲明;變量聲明; /常量常量 方法聲明;方法聲明; /籠統(tǒng)方法籠統(tǒng)方法 關(guān)于接口的幾點闡明關(guān)于接口的幾點闡明 接口可以承繼其它接口,由關(guān)鍵字接口可以承繼其它接口,由關(guān)鍵字ext

8、ends實現(xiàn)實現(xiàn) 與類不同的是接口可以實現(xiàn)多重承繼,與類不同的是接口可以實現(xiàn)多重承繼,SuperInterfaceList是父接口名表,可以有多個父是父接口名表,可以有多個父接口,用逗號分隔接口,用逗號分隔 public interface 接口名接口名 extends 父接口名列表父接口名列表 變量聲明;變量聲明; /常量常量 方法聲明;方法聲明; /籠統(tǒng)方法籠統(tǒng)方法 關(guān)于接口的幾點闡明關(guān)于接口的幾點闡明public interface 接口名接口名 extends 父接口名列表父接口名列表 變量聲明;變量聲明; /常量常量 方法聲明;方法聲明; /籠統(tǒng)方法籠統(tǒng)方法 接口是由常量和籠統(tǒng)方法接

9、口是由常量和籠統(tǒng)方法 組成的特殊籠統(tǒng)類組成的特殊籠統(tǒng)類/相當于類中的靜態(tài)常量相當于類中的靜態(tài)常量/都是只聲明的籠統(tǒng)方法都是只聲明的籠統(tǒng)方法一個學生信息接口的聲明:一個學生信息接口的聲明: interface Stu_inforint year=2002; int age();void output(); 其中,接口中聲明了一個成員變量其中,接口中聲明了一個成員變量year,成員方法,成員方法age 接口中聲明的變量都默以為接口中聲明的變量都默以為public的,的,static的、的、final的,在的,在聲明時須初始化,相當于常量;聲明時須初始化,相當于常量; 接口中的方法總是接口中的方法總

10、是public的,的,abstract的,在聲明時這些修飾的,在聲明時這些修飾符都可以省略。符都可以省略。 接口不需求構(gòu)造方法,接口中的方法都是沒有方法體的籠統(tǒng)接口不需求構(gòu)造方法,接口中的方法都是沒有方法體的籠統(tǒng)方法方法幾點闡明幾點闡明格式如下:格式如下:8.1 .2 8.1 .2 接口的實現(xiàn)接口的實現(xiàn) 修飾符修飾符 class 類名類名 extends 超類名超類名 implements 接口名接口名1, 接口名接口名2,.interface Student_info int year = 2002; int age( ); void output();public class Stu1 i

11、mplements Student_info String name; int birth_year; public Stu1(String n1,int y) name = n1; birth_year = y; public int age() return year - birth_year; public void output() System.out.println( + + this.age()+歲歲); public static void main (String args) Stu1 s1 = new Stu1(李明李明,1980); s1.output(

12、); 例例6.1 實現(xiàn)接口的類實現(xiàn)接口的類聲明的接口:變量是常量,聲明的接口:變量是常量,方法沒有方法體的籠統(tǒng)方法方法沒有方法體的籠統(tǒng)方法實現(xiàn)接口的類,并實現(xiàn)接口的類,并定義了類本身的成定義了類本身的成員變量員變量實現(xiàn)接口的方法:實現(xiàn)接口的方法:age( ); output( )【例【例8.18.1】 接口的實現(xiàn)接口的實現(xiàn)interface Student_info /學生情況接學生情況接口口 int year = 2002; int age(); void output();interface Student_scoure /學生成果接口學生成果接口 float total(); void

13、output(); 兩個接口具有一個同名的方法; 下面定義一個同時實現(xiàn)兩個接口的類【例【例8.28.2】 接口的運用接口的運用public class Stu2 implements Student_info, Student_scoure String name; int birth_year; float math, english, computer; public Stu2(String n1,int y,float a,float b,float c) name = n1; birth_year = y; math = a; english = b; computer = c; pu

14、blic int age() return year - birth_year; public float total() return math + english + computer; public void output() System.out.print( + + this.age()+歲歲 ); System.out.println(math + + english + + computer + + total(); public static void main (String args) Stu2 s2 = new Stu2(李明李明,1980,90,80,

15、70); s2.output(); /實現(xiàn)學生情況接口、學生成果接口/構(gòu)造方法/實現(xiàn)接口中的方法/實現(xiàn)接口中的方法/同時實現(xiàn)兩個接口中的方法籠統(tǒng)類通常代表一個籠統(tǒng)的概念,它提供一個承繼的出發(fā)點籠統(tǒng)類通常代表一個籠統(tǒng)的概念,它提供一個承繼的出發(fā)點;籠統(tǒng)類中即可以聲明籠統(tǒng)方法,還能聲明曾經(jīng)實現(xiàn)的方法籠統(tǒng)類中即可以聲明籠統(tǒng)方法,還能聲明曾經(jīng)實現(xiàn)的方法 非籠統(tǒng)方法非籠統(tǒng)方法;接口只含有籠統(tǒng)方法,假設在一個籠統(tǒng)類添加一個新的曾經(jīng)接口只含有籠統(tǒng)方法,假設在一個籠統(tǒng)類添加一個新的曾經(jīng) 實現(xiàn)的方法,一切的子類都可直接承繼該方法,而接口不能實現(xiàn)的方法,一切的子類都可直接承繼該方法,而接口不能;類可以承繼多個接口

16、,而類只能承繼一個超類類可以承繼多個接口,而類只能承繼一個超類 籠統(tǒng)類或其他籠統(tǒng)類或其他;接口是一個比籠統(tǒng)類更加籠統(tǒng)的概念。接口是一個比籠統(tǒng)類更加籠統(tǒng)的概念。 學好接口有助于更好的了解和運用面向?qū)ο蟮脑O計原那么,學好接口有助于更好的了解和運用面向?qū)ο蟮脑O計原那么, 設計出更好的軟件系統(tǒng)。設計出更好的軟件系統(tǒng)。 8.2 8.2 內(nèi)部類內(nèi)部類 一個類嵌套定義在另一個類的內(nèi)部,稱為內(nèi)部類inner class包含內(nèi)部類的類稱為外部類與普通的類一樣,內(nèi)部類可以有本人的成員變量和成員方法。 運用內(nèi)部類必需求先了解內(nèi)部類與包圍它的外部類之間的關(guān)系, 以及它們之間的成員如何實現(xiàn)相互訪問。內(nèi)部類定義舉例內(nèi)部類

17、定義舉例public class Group1 int count; /外部類的成員變量外部類的成員變量 public class Student /聲明內(nèi)部類聲明內(nèi)部類 String name; /內(nèi)部類的成員變量內(nèi)部類的成員變量 public void output() /內(nèi)部類的成員方法內(nèi)部類的成員方法 System.out.println( + ); 【例【例8.3】內(nèi)部類的定義】內(nèi)部類的定義8.2.1 8.2.1 內(nèi)部類的特性內(nèi)部類的特性 java將內(nèi)部類作為外部類的一個成員,就好像其成員變量與將內(nèi)部類作為外部類的一個成員,就好像其成員變量與 成員方法一樣;成員方法

18、一樣;所以,普通類只能是所以,普通類只能是public和非和非public缺省,而內(nèi)部類可缺省,而內(nèi)部類可以指定為以指定為 private 和和 protected訪問權(quán)限同其他成員;訪問權(quán)限同其他成員;內(nèi)部類可以實現(xiàn)接口及籠統(tǒng)類中的籠統(tǒng)方法內(nèi)部類可以實現(xiàn)接口及籠統(tǒng)類中的籠統(tǒng)方法外層類可以將上述實現(xiàn)細節(jié)乃至內(nèi)部類都隱藏起來,給外層類可以將上述實現(xiàn)細節(jié)乃至內(nèi)部類都隱藏起來,給 外界提供接口外界提供接口8.2.2 8.2.2 內(nèi)部類的特性內(nèi)部類的特性 內(nèi)部類與外部類的訪問規(guī)那么內(nèi)部類與外部類的訪問規(guī)那么內(nèi)部類與外部類各有本人的成員;內(nèi)部類與外部類各有本人的成員;在外部類中,經(jīng)過內(nèi)部類對象援用內(nèi)部類

19、;在外部在外部類中,經(jīng)過內(nèi)部類對象援用內(nèi)部類;在外部類的類的 main方法或其他類中訪問內(nèi)部類,必需給出內(nèi)部類方法或其他類中訪問內(nèi)部類,必需給出內(nèi)部類的的 完好名字,如,完好名字,如, Group1. Student在內(nèi)部類中,可以直接援用外部類的一切成員,包在內(nèi)部類中,可以直接援用外部類的一切成員,包括外部類的靜態(tài)成員、實例成員以及私有成員;括外部類的靜態(tài)成員、實例成員以及私有成員;舉例如下,舉例如下,public class Group2 private int count; public class Student String name; public Student(String n

20、1) name = n1; count+; public void output() System.out.print( + ); public void output() Student s1 = new Student(李明李明); s1.output(); System.out.println( count = +this.count); public static void main (String args) Group2 g2 = new Group2( ); g2.output(); Group2.Student s=g2.new Student(李四李四);

21、s.output(); 聲明內(nèi)部類聲明內(nèi)部類訪問其外部類訪問其外部類的成員變量的成員變量內(nèi)部類的成員:內(nèi)部類的成員:name,output()外部類方法,與內(nèi)部外部類方法,與內(nèi)部類方法同名類方法同名創(chuàng)建內(nèi)部類對象,創(chuàng)建內(nèi)部類對象,并經(jīng)過內(nèi)部類對象并經(jīng)過內(nèi)部類對象 訪訪問內(nèi)部類成員問內(nèi)部類成員8.2.2 8.2.2 內(nèi)部類的特性內(nèi)部類的特性 內(nèi)部類可以定義為籠統(tǒng)類型內(nèi)部類可以定義為籠統(tǒng)類型但需求被外部類的其他內(nèi)部類承繼與實現(xiàn)但需求被外部類的其他內(nèi)部類承繼與實現(xiàn)內(nèi)部類可以是一個接口內(nèi)部類可以是一個接口但這個接口需求被外部類的其他內(nèi)部類實現(xiàn)但這個接口需求被外部類的其他內(nèi)部類實現(xiàn)8.2.4 8.2.4

22、 靜態(tài)內(nèi)部類靜態(tài)內(nèi)部類假設一個內(nèi)部類是靜態(tài)的,那么靜態(tài)內(nèi)部類中假設一個內(nèi)部類是靜態(tài)的,那么靜態(tài)內(nèi)部類中的方法無論是靜態(tài)的方法還是非靜態(tài)的方法的方法無論是靜態(tài)的方法還是非靜態(tài)的方法只能直接訪問外部類中的靜態(tài)成員只能直接訪問外部類中的靜態(tài)成員要訪問外部類中的非靜態(tài)成員,那么必需在內(nèi)要訪問外部類中的非靜態(tài)成員,那么必需在內(nèi)部類創(chuàng)建外部類的對象,經(jīng)過對象名訪問外部非部類創(chuàng)建外部類的對象,經(jīng)過對象名訪問外部非靜態(tài)成員靜態(tài)成員只需靜態(tài)內(nèi)部類才可以聲明靜態(tài)成員;只需靜態(tài)內(nèi)部類才可以聲明靜態(tài)成員;靜態(tài)內(nèi)部類無法正常訪問外部類非靜態(tài)成員,靜態(tài)內(nèi)部類無法正常訪問外部類非靜態(tài)成員,遭到限制遭到限制 需求在內(nèi)部類定義

23、靜態(tài)成員;需求在內(nèi)部類定義靜態(tài)成員; 希望隱藏內(nèi)部類;希望隱藏內(nèi)部類; 防止類名反復防止類名反復 為了防止這種情況,可以把能夠重名的類設置為為了防止這種情況,可以把能夠重名的類設置為static、public的內(nèi)部類的內(nèi)部類 其他類在援用時要運用完成的內(nèi)部類名標識外部其他類在援用時要運用完成的內(nèi)部類名標識外部類名類名.內(nèi)部類名,這樣就防止了類名反復。內(nèi)部類名,這樣就防止了類名反復。運用靜態(tài)內(nèi)部類的緣由運用靜態(tài)內(nèi)部類的緣由 【例【例5.5】 靜態(tài)內(nèi)部類靜態(tài)內(nèi)部類public class Group6 public static class Student static int count; St

24、ring name; int number; public Student(String n1) name = n1; count+; number = count; public void output() System.out.println( + number=+this.number); public static void main (String args) Group6.Student s1 = new Group6.Student(“張三張三); s1.output(); Group6.Student s2 = new Group6.Student(“李四李四

25、); s2.output(); 定義靜態(tài)公用內(nèi)部類定義靜態(tài)公用內(nèi)部類靜態(tài)內(nèi)部類中的靜態(tài)內(nèi)部類中的靜態(tài)變量靜態(tài)變量紀錄創(chuàng)建對象的序號紀錄創(chuàng)建對象的序號靜態(tài)內(nèi)部類的構(gòu)造方法靜態(tài)內(nèi)部類的構(gòu)造方法創(chuàng)建一個對象創(chuàng)建一個對象序號自動添加序號自動添加在靜態(tài)在靜態(tài)main方法中,經(jīng)過完好的內(nèi)方法中,經(jīng)過完好的內(nèi)部類標示符創(chuàng)建內(nèi)部類對象部類標示符創(chuàng)建內(nèi)部類對象在靜態(tài)在靜態(tài)main方法中,經(jīng)過完好的內(nèi)部類標示符方法中,經(jīng)過完好的內(nèi)部類標示符Group6.Student創(chuàng)建內(nèi)部類對象,并運用靜態(tài)創(chuàng)建內(nèi)部類對象,并運用靜態(tài)成員變量記錄創(chuàng)建對象的序號成員變量記錄創(chuàng)建對象的序號8.2.5 8.2.5 靜態(tài)內(nèi)部類的特殊用法

26、靜態(tài)內(nèi)部類的特殊用法編譯上面源程序Group6.Java,查看類的字節(jié)碼文件,不但有編譯后產(chǎn)生的類Group6的字節(jié)碼文件Group6 .class,還產(chǎn)生一個名字為Group6 $ Student.class的文件,嵌套類的字節(jié)碼文件名是以外部類名和“$開頭,接著是嵌套類的名字在開發(fā)運用程序時需求編寫大量的類,并需求對這些類進展調(diào)試、演示根據(jù)靜態(tài)內(nèi)部類的特點,在編寫一個類時,在類中可以定義一個靜態(tài)內(nèi)部類作為一個獨立的、可選的輔助功能,如,用作代碼的測試和演示,方便而有效 public class Outer /外部類外部類 private int i, j; static int s=1;

27、Outer(int a,int b) i=a; j=b; public void dis() System.out.println(i+ +j); public static class Test /含有靜態(tài)含有靜態(tài)main方法的靜態(tài)內(nèi)部類方法的靜態(tài)內(nèi)部類 public static void main (String args) /測試外部類測試外部類 Outer t=new Outer(10,100); /創(chuàng)建外部類對象創(chuàng)建外部類對象 t.dis(); System.out.println(s); /靜態(tài)內(nèi)部類可訪問外部類靜態(tài)成員靜態(tài)內(nèi)部類可訪問外部類靜態(tài)成員 【例【例8.68.6】利用靜

28、態(tài)內(nèi)部類調(diào)試外部類】利用靜態(tài)內(nèi)部類調(diào)試外部類 首先編譯源程序首先編譯源程序Outer.java,會產(chǎn)生兩個,會產(chǎn)生兩個class文文件:件:Outer.class和和Outer$Test.class。然后運轉(zhuǎn)。然后運轉(zhuǎn)Outer$Test可完成對外部類的測試可完成對外部類的測試 Java將嵌套類分將嵌套類分2類:嵌套頂層類類:嵌套頂層類nested top-level classes和內(nèi)部類和內(nèi)部類inner classes,內(nèi)部類又分為:,內(nèi)部類又分為: 實例內(nèi)部類實例內(nèi)部類instance inner class; 本地內(nèi)部類本地內(nèi)部類local inner class 匿名內(nèi)部類匿名內(nèi)部

29、類and anonymous inner class 所謂頂層類就是它沒有超類,假設在內(nèi)部類的聲明所謂頂層類就是它沒有超類,假設在內(nèi)部類的聲明前加上前加上static的修飾符,該內(nèi)部類自動轉(zhuǎn)化為頂層類。的修飾符,該內(nèi)部類自動轉(zhuǎn)化為頂層類。內(nèi)部類的其他特性內(nèi)部類的其他特性 除了可以把內(nèi)部類聲明為靜態(tài)的,內(nèi)部類還可以可以定義為除了可以把內(nèi)部類聲明為靜態(tài)的,內(nèi)部類還可以可以定義為籠統(tǒng)類或接口,那么這個籠統(tǒng)類或接口必需由另一個內(nèi)部類籠統(tǒng)類或接口,那么這個籠統(tǒng)類或接口必需由另一個內(nèi)部類來實現(xiàn)。來實現(xiàn)。 Java還提供了本地內(nèi)部類,它可以出如今恣意的代碼塊中,還提供了本地內(nèi)部類,它可以出如今恣意的代碼塊中

30、,包括一個方法體中或者一個包括一個方法體中或者一個for語句的代碼塊語句的代碼塊 假設一個本地內(nèi)部類沒有聲明名字,這就是假設一個本地內(nèi)部類沒有聲明名字,這就是Java中的匿名內(nèi)中的匿名內(nèi)部類部類 匿名類是一種特殊的內(nèi)部類,它是在一個表達式內(nèi)部包含一匿名類是一種特殊的內(nèi)部類,它是在一個表達式內(nèi)部包含一個完好的類定義。個完好的類定義。 內(nèi)部類的其他特性內(nèi)部類的其他特性 JARJava Archive是一種與平臺無關(guān)的文檔格式,用是一種與平臺無關(guān)的文檔格式,用于將多個文件緊縮為一個文件于將多個文件緊縮為一個文件JAR 文件可以說就是一個緊縮的文件可以說就是一個緊縮的ZIP文件,與文件,與 ZIP 文

31、件的文件的區(qū)別有兩點:區(qū)別有兩點:首先在首先在 JAR 文件中,包含了一個文件中,包含了一個 META-INF子目錄,在子目錄,在該子目錄中有個該子目錄中有個MANIFEST.MF 文件,這個文件是在生成文件,這個文件是在生成 JAR 文件的時候系統(tǒng)自動創(chuàng)建的,該文件稱為清單文件;文件的時候系統(tǒng)自動創(chuàng)建的,該文件稱為清單文件;其次其次JAR 文件可被文件可被Java2平臺識別并解釋執(zhí)行。平臺識別并解釋執(zhí)行。8.3 jAR文件留意:在留意:在jdk環(huán)境下,無法把編寫的環(huán)境下,無法把編寫的java源程序打包源程序打包生成可執(zhí)行的生成可執(zhí)行的exe文件,但可經(jīng)過工具實現(xiàn)。文件,但可經(jīng)過工具實現(xiàn)。8.3 8.3 制造制造JARJAR文件文件制造一個可執(zhí)行的JAR 文件包來發(fā)布程序是JAR 文件最典型的用法假設要制造一個可執(zhí)行的JAR 文件,需求在META-INF 目錄下的清單文件MANIFEST.MF中指明主類,也就是包含main()方法的類的稱號:Main-Class: theMainclass留意:“:和主類名之間有必需有一個空格,而且只能有一個空格。該行以一個換行符作為終了符class theD

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論