資料介紹
JAVA語言的抽象封裝與類
5.1 抽象與封裝
5.2 Java的類
5.3 類的修飾符
5.4 域
5.5 方法
5.6 訪問控制符
面向?qū)ο蟮某绦蛟O(shè)計(jì)有四大特點(diǎn):抽象、封裝、繼承和多態(tài)性。
一、抽象:即去掉與主題無關(guān)的次要的部分,而僅僅抽象取出與工作有關(guān)的實(shí)質(zhì)的內(nèi)容加以研究。
?? 在計(jì)算機(jī)技術(shù)常用的抽象的過程抽象與數(shù)據(jù)抽象。
?? 過程抽象是將整個(gè)系統(tǒng)的功能劃分成為若干部分,強(qiáng)調(diào)功能完成的過程和步驟。面向過程的程序設(shè)計(jì)就采用這種方法。
?? 數(shù)據(jù)抽象是與過程抽象不同的抽象方法,它把系統(tǒng)中需要處理的數(shù)據(jù)和這些數(shù)據(jù)的的操作結(jié)合在一起,根據(jù)功能、性質(zhì)、作用等因素抽象成不同的抽象數(shù)據(jù)類型,每個(gè)數(shù)據(jù)類型即包括了數(shù)據(jù),又包括了針對這些數(shù)據(jù)的操作。
?? 面向?qū)ο蟮能浖_發(fā)方法的主要特點(diǎn)就是采用數(shù)據(jù)抽象的方法來構(gòu)建程序中的類、對象的方法。它的優(yōu)點(diǎn)為:
一方面可以去掉與核心問題無關(guān)的東西,使開發(fā)工作可以集中在比較關(guān)鍵、主要的部分;另一方面,在數(shù)據(jù)抽象過程中對數(shù)據(jù)和操作的分析、辨別和定義可以幫助開發(fā)者對整個(gè)問題有更深入、準(zhǔn)確的認(rèn)識。
?? 例如:人們不會把一輛汽車像想成一大堆成千上萬的單個(gè)零件,而只會把它看成是一個(gè)擁有自己特殊行為的定義好的對象。這種抽象允許人們使用汽車而不管它的部件的復(fù)雜性。
? 我們也可以通過分層抽象,將汽車分成若干個(gè)子對象。從而將它分成若干個(gè)小對象來管理和使用。
? 對于一個(gè)傳統(tǒng)的面向過程的程序,它的數(shù)據(jù)可以通過抽象轉(zhuǎn)變構(gòu)成它的對象。一系列過程步驟能夠成為這些對象之間的信息集合。所以每一個(gè)對象描述它自己的獨(dú)特行為。消息告訴它對象能夠做什么,而我們可以將這些對象看作是對消息產(chǎn)生反應(yīng)的具體存在。
? 面向?qū)ο蟾拍钚纬闪薐ava的核心, 我們要理解這些概念是如何轉(zhuǎn)變成程序的。
二、封裝:就是利用抽象數(shù)據(jù)類型將數(shù)據(jù)和基于數(shù)據(jù)的操作封裝在一起,數(shù)據(jù)被保護(hù)在抽象數(shù)據(jù)類型的內(nèi)部,系統(tǒng)的其它部分只有通過包裹在數(shù)據(jù)外部的被授權(quán)的操作,才能夠與這個(gè)抽象數(shù)據(jù)類型進(jìn)行交流。
?? 在OOP中,抽象數(shù)據(jù)類型是利用類這種結(jié)構(gòu)來實(shí)現(xiàn)的,每個(gè)類里面封裝了相關(guān)的數(shù)據(jù)和操作。在實(shí)際的開發(fā)過程中,類多用來構(gòu)建系統(tǒng)內(nèi)部的模塊,由于封裝特性把類內(nèi)的數(shù)據(jù)保護(hù)得很好,模塊與模塊間僅僅通過嚴(yán)格控制的界面進(jìn)行交互,使它們之間的耦合和交叉大大減少,從而降低了開發(fā)過程的復(fù)雜性,提高效率和質(zhì)量,減少了可能的錯誤,同時(shí)也保證了程序中數(shù)據(jù)的完整性和安全性。
?? 在OOP中,這種封裝的特性,使得類或模塊的可重用性大地提高,封裝使得抽象數(shù)據(jù)類型對內(nèi)成為一個(gè)結(jié)構(gòu),可自我管理,對外則是一個(gè)功能明確、接口單一,可獨(dú)立工作的有機(jī)單元。這樣的有機(jī)單元特別有利于構(gòu)建、開發(fā)大型標(biāo)準(zhǔn)化的應(yīng)用軟件系統(tǒng),可以大幅度地提高生產(chǎn)效率,縮短開發(fā)周期和降低開發(fā)費(fèi)用。
Java的類庫
一、系統(tǒng)預(yù)定義類:
? Java的程序設(shè)計(jì)就是定義類的過程,類庫是Java語言的重要組成部分,Java的類庫包括系統(tǒng)類和用戶自定義的類。Java語言是由語法規(guī)則和類庫兩部分組成的。語法規(guī)則確定Java程序的書寫規(guī)范;類庫則提供了Java程序與運(yùn)行它的系統(tǒng)軟件之間的接口。Java的系統(tǒng)類是編寫好的Java程序模塊,每個(gè)模塊通常對應(yīng)一種特定的基本功能和任務(wù),在我們的程序中可以直接使用而不需要從頭做起。所以學(xué)習(xí)Java必須注意兩個(gè)問題:Java的語言規(guī)范和系統(tǒng)類庫。
? Java類庫根據(jù)實(shí)現(xiàn)的功能不同,可以劃分成不同的集合,每個(gè)集合是一個(gè)包,即類庫,稱為Java的API。我們介紹的是Java 2的類庫。
(1)java.lang:它是Java語言的核心在庫,包含了運(yùn)行Java程序必不可少的系統(tǒng)類。系統(tǒng)會自動地加入這個(gè)包。
(2)java.io:是Java的標(biāo)準(zhǔn)輸入輸出類庫,它實(shí)現(xiàn)了Java程序與OS、用戶界面以及其它Java程序做數(shù)據(jù)交換所使用的類。
(3)java.util:包含了Java中的一些低級的實(shí)用工具。
(4)java.awt:是Java語言用來構(gòu)建GUI界面的類庫。
(5)java.awt.image:是用來處理和操縱來自于網(wǎng)上的圖片的工具類庫。
(6)java.peer:對等體包,是Java實(shí)現(xiàn)跨平臺特性的手段之一。
(7)java.applet:是用來構(gòu)建Java Applet程序的類庫。
(8)java.net:是用來支持網(wǎng)絡(luò)功能的類庫。
(9)java.corba、java.corba.orb:是將corba嵌入到Java環(huán)境中的工具。
(10)java.lang.reflect:反射工具類庫。
(11)java.rmi、java.rmi.registry、java.rmi.server:是用來實(shí)現(xiàn)RMI的工具。
(12)java.security、java.security.acl、java.security.interfaces:是實(shí)現(xiàn)安全管理的控制的工具。
(13)java.tuil.zip:是用來實(shí)現(xiàn)文件壓縮的工具。
(14)java.awt.datatransfer:是用來處理數(shù)據(jù)傳輸?shù)墓ぞ哳悺?BR>(15)java.awt.event:事件處理的類庫。
(16)java.sql:是用來實(shí)現(xiàn)JDBC的類庫。
? 對上述類庫的使用有三種方式:一是通過繼承;二是直接刨建系統(tǒng)類的對象;三是直接使用系統(tǒng)類的方法。
? 無論采用哪種方式都必須使類庫可見,即引入類庫。
二、用戶自定義類:
? 系統(tǒng)類中雖然預(yù)定義了很多類,但用戶在實(shí)際使用時(shí),仍然要根據(jù)特定的問題來自己定義類。
? 用戶的自己定義類包括類頭和類體,類體又包括屬性和方法兩部分。
(打開電括類庫文件:PhoneCard.java)
三、創(chuàng)建對象和類的構(gòu)造函數(shù):
? 1、創(chuàng)建對象:
?一般格式為:
?類名? 新對象名=new 類的構(gòu)造函數(shù);
如:TextField input=new TextField(8);
??? phoneCard myCard=new phoneCard();
從上面可以看出,對象是以類的模板創(chuàng)建的具體實(shí)例。myCard對象中的它自己的五個(gè)域和三個(gè)方法,即:
myCard.cardNumber;myCard.password;myCard.balance;myCard.connectNumber等等。如果另外創(chuàng)建一對象,則它也有自己的域和方法。如果要訪問一個(gè)對象的域和方法,則格式為:
?對象名.域或方法;
如:myCard.balance=50.00;
5.1 抽象與封裝
5.2 Java的類
5.3 類的修飾符
5.4 域
5.5 方法
5.6 訪問控制符
面向?qū)ο蟮某绦蛟O(shè)計(jì)有四大特點(diǎn):抽象、封裝、繼承和多態(tài)性。
一、抽象:即去掉與主題無關(guān)的次要的部分,而僅僅抽象取出與工作有關(guān)的實(shí)質(zhì)的內(nèi)容加以研究。
?? 在計(jì)算機(jī)技術(shù)常用的抽象的過程抽象與數(shù)據(jù)抽象。
?? 過程抽象是將整個(gè)系統(tǒng)的功能劃分成為若干部分,強(qiáng)調(diào)功能完成的過程和步驟。面向過程的程序設(shè)計(jì)就采用這種方法。
?? 數(shù)據(jù)抽象是與過程抽象不同的抽象方法,它把系統(tǒng)中需要處理的數(shù)據(jù)和這些數(shù)據(jù)的的操作結(jié)合在一起,根據(jù)功能、性質(zhì)、作用等因素抽象成不同的抽象數(shù)據(jù)類型,每個(gè)數(shù)據(jù)類型即包括了數(shù)據(jù),又包括了針對這些數(shù)據(jù)的操作。
?? 面向?qū)ο蟮能浖_發(fā)方法的主要特點(diǎn)就是采用數(shù)據(jù)抽象的方法來構(gòu)建程序中的類、對象的方法。它的優(yōu)點(diǎn)為:
一方面可以去掉與核心問題無關(guān)的東西,使開發(fā)工作可以集中在比較關(guān)鍵、主要的部分;另一方面,在數(shù)據(jù)抽象過程中對數(shù)據(jù)和操作的分析、辨別和定義可以幫助開發(fā)者對整個(gè)問題有更深入、準(zhǔn)確的認(rèn)識。
?? 例如:人們不會把一輛汽車像想成一大堆成千上萬的單個(gè)零件,而只會把它看成是一個(gè)擁有自己特殊行為的定義好的對象。這種抽象允許人們使用汽車而不管它的部件的復(fù)雜性。
? 我們也可以通過分層抽象,將汽車分成若干個(gè)子對象。從而將它分成若干個(gè)小對象來管理和使用。
? 對于一個(gè)傳統(tǒng)的面向過程的程序,它的數(shù)據(jù)可以通過抽象轉(zhuǎn)變構(gòu)成它的對象。一系列過程步驟能夠成為這些對象之間的信息集合。所以每一個(gè)對象描述它自己的獨(dú)特行為。消息告訴它對象能夠做什么,而我們可以將這些對象看作是對消息產(chǎn)生反應(yīng)的具體存在。
? 面向?qū)ο蟾拍钚纬闪薐ava的核心, 我們要理解這些概念是如何轉(zhuǎn)變成程序的。
二、封裝:就是利用抽象數(shù)據(jù)類型將數(shù)據(jù)和基于數(shù)據(jù)的操作封裝在一起,數(shù)據(jù)被保護(hù)在抽象數(shù)據(jù)類型的內(nèi)部,系統(tǒng)的其它部分只有通過包裹在數(shù)據(jù)外部的被授權(quán)的操作,才能夠與這個(gè)抽象數(shù)據(jù)類型進(jìn)行交流。
?? 在OOP中,抽象數(shù)據(jù)類型是利用類這種結(jié)構(gòu)來實(shí)現(xiàn)的,每個(gè)類里面封裝了相關(guān)的數(shù)據(jù)和操作。在實(shí)際的開發(fā)過程中,類多用來構(gòu)建系統(tǒng)內(nèi)部的模塊,由于封裝特性把類內(nèi)的數(shù)據(jù)保護(hù)得很好,模塊與模塊間僅僅通過嚴(yán)格控制的界面進(jìn)行交互,使它們之間的耦合和交叉大大減少,從而降低了開發(fā)過程的復(fù)雜性,提高效率和質(zhì)量,減少了可能的錯誤,同時(shí)也保證了程序中數(shù)據(jù)的完整性和安全性。
?? 在OOP中,這種封裝的特性,使得類或模塊的可重用性大地提高,封裝使得抽象數(shù)據(jù)類型對內(nèi)成為一個(gè)結(jié)構(gòu),可自我管理,對外則是一個(gè)功能明確、接口單一,可獨(dú)立工作的有機(jī)單元。這樣的有機(jī)單元特別有利于構(gòu)建、開發(fā)大型標(biāo)準(zhǔn)化的應(yīng)用軟件系統(tǒng),可以大幅度地提高生產(chǎn)效率,縮短開發(fā)周期和降低開發(fā)費(fèi)用。
Java的類庫
一、系統(tǒng)預(yù)定義類:
? Java的程序設(shè)計(jì)就是定義類的過程,類庫是Java語言的重要組成部分,Java的類庫包括系統(tǒng)類和用戶自定義的類。Java語言是由語法規(guī)則和類庫兩部分組成的。語法規(guī)則確定Java程序的書寫規(guī)范;類庫則提供了Java程序與運(yùn)行它的系統(tǒng)軟件之間的接口。Java的系統(tǒng)類是編寫好的Java程序模塊,每個(gè)模塊通常對應(yīng)一種特定的基本功能和任務(wù),在我們的程序中可以直接使用而不需要從頭做起。所以學(xué)習(xí)Java必須注意兩個(gè)問題:Java的語言規(guī)范和系統(tǒng)類庫。
? Java類庫根據(jù)實(shí)現(xiàn)的功能不同,可以劃分成不同的集合,每個(gè)集合是一個(gè)包,即類庫,稱為Java的API。我們介紹的是Java 2的類庫。
(1)java.lang:它是Java語言的核心在庫,包含了運(yùn)行Java程序必不可少的系統(tǒng)類。系統(tǒng)會自動地加入這個(gè)包。
(2)java.io:是Java的標(biāo)準(zhǔn)輸入輸出類庫,它實(shí)現(xiàn)了Java程序與OS、用戶界面以及其它Java程序做數(shù)據(jù)交換所使用的類。
(3)java.util:包含了Java中的一些低級的實(shí)用工具。
(4)java.awt:是Java語言用來構(gòu)建GUI界面的類庫。
(5)java.awt.image:是用來處理和操縱來自于網(wǎng)上的圖片的工具類庫。
(6)java.peer:對等體包,是Java實(shí)現(xiàn)跨平臺特性的手段之一。
(7)java.applet:是用來構(gòu)建Java Applet程序的類庫。
(8)java.net:是用來支持網(wǎng)絡(luò)功能的類庫。
(9)java.corba、java.corba.orb:是將corba嵌入到Java環(huán)境中的工具。
(10)java.lang.reflect:反射工具類庫。
(11)java.rmi、java.rmi.registry、java.rmi.server:是用來實(shí)現(xiàn)RMI的工具。
(12)java.security、java.security.acl、java.security.interfaces:是實(shí)現(xiàn)安全管理的控制的工具。
(13)java.tuil.zip:是用來實(shí)現(xiàn)文件壓縮的工具。
(14)java.awt.datatransfer:是用來處理數(shù)據(jù)傳輸?shù)墓ぞ哳悺?BR>(15)java.awt.event:事件處理的類庫。
(16)java.sql:是用來實(shí)現(xiàn)JDBC的類庫。
? 對上述類庫的使用有三種方式:一是通過繼承;二是直接刨建系統(tǒng)類的對象;三是直接使用系統(tǒng)類的方法。
? 無論采用哪種方式都必須使類庫可見,即引入類庫。
二、用戶自定義類:
? 系統(tǒng)類中雖然預(yù)定義了很多類,但用戶在實(shí)際使用時(shí),仍然要根據(jù)特定的問題來自己定義類。
? 用戶的自己定義類包括類頭和類體,類體又包括屬性和方法兩部分。
(打開電括類庫文件:PhoneCard.java)
三、創(chuàng)建對象和類的構(gòu)造函數(shù):
? 1、創(chuàng)建對象:
?一般格式為:
?類名? 新對象名=new 類的構(gòu)造函數(shù);
如:TextField input=new TextField(8);
??? phoneCard myCard=new phoneCard();
從上面可以看出,對象是以類的模板創(chuàng)建的具體實(shí)例。myCard對象中的它自己的五個(gè)域和三個(gè)方法,即:
myCard.cardNumber;myCard.password;myCard.balance;myCard.connectNumber等等。如果另外創(chuàng)建一對象,則它也有自己的域和方法。如果要訪問一個(gè)對象的域和方法,則格式為:
?對象名.域或方法;
如:myCard.balance=50.00;
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Java程序設(shè)計(jì)教程之Java語言的基礎(chǔ)知識概述 36次下載
- Java教程之零點(diǎn)起飛學(xué)Java的類與對象資料說明 14次下載
- JAVA教程之面向?qū)ο蟪绦蛟O(shè)計(jì)語言Java的系統(tǒng)環(huán)境概述 0次下載
- JAVA教程之消息、繼承與多態(tài)的應(yīng)用和資料介紹說明 0次下載
- JAVA程序設(shè)計(jì)教程之Java中系統(tǒng)類的詳細(xì)資料說明 0次下載
- JAVA程序設(shè)計(jì)教程之Java語言基礎(chǔ)的詳細(xì)資料說明 0次下載
- java 網(wǎng)絡(luò)編程語言 0次下載
- Java語言程序設(shè)計(jì),下載 0次下載
- java類庫下載,java類庫大全 0次下載
- Java的類 0次下載
- 北大java課件,下載 0次下載
- JAVA語言的工具類與算法
- Java語言基礎(chǔ)
- JAVA語言與面向?qū)ο蟪绦蛟O(shè)計(jì)課件
- java程序設(shè)計(jì)課件 0次下載
- Java泛型的背景和作用 1115次閱讀
- Java語言有什么特點(diǎn)/優(yōu)點(diǎn)? 1090次閱讀
- Java泛型的工作原理和案例 2670次閱讀
- Java語言為什么一直位居排行榜第一 2557次閱讀
- C語言的簡介和特點(diǎn)說明 8053次閱讀
- 為什么要學(xué)習(xí)Java 2973次閱讀
- Java的封裝性 2319次閱讀
- Java面向?qū)ο蟮?b class="flag-6" style="color: red">封裝原則 1780次閱讀
- 學(xué)習(xí)C語言你所必須要了解的知識有哪些 2392次閱讀
- Java入門的大致學(xué)習(xí)路線 4532次閱讀
- java入門經(jīng)典書籍推薦 1.9w次閱讀
- Java編程和c語言哪一種更有優(yōu)勢_C語言與JAVA的區(qū)別是什么 2.4w次閱讀
- Java數(shù)組的常用方法_Java:數(shù)組工具類Arrays類的常用方法的用法及代碼 2929次閱讀
- java8新特性 1749次閱讀
- java與c之間的數(shù)據(jù)交互 1794次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1490次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費(fèi)
- 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
- 0.63 MB | 3次下載 | 免費(fèi)
- 89天練會電子電路識圖
- 5.91 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評論