-
object
(一些相關的變量和方法的軟件集)
鎖定
對象object是經常用於模仿現實世界中我們身邊的一些對象。
object軟件對象
軟件對象實際上是現實世界對象的造型,因為它同樣有狀態和行為。一個軟件對象利用一個或者多個變量來維持它的狀態。變量是由用户標識符來命名的數據項。軟件對象用它的方法來執行它的行為。方法是跟對象有關聯的函數(子程序)。
對象是理解面向對象技術的關鍵。用户在學習之前可以看看現實生活中的對象,比如狗、桌子、電視、自行車等等。用户可以發現現實世界中的對象有兩個共同特徵:它們都有狀態和行為。比如狗有自己的狀態(比如名字、顏色、生育以及飢餓等等)和行為(比如搖尾巴等等)。同樣自行車也有自己的狀態(比如當前檔位、兩個輪子等等)和行為(比如剎車、加速、減速以及改變檔位等等)。
object應用
你可以利用軟件對象來代表現實世界中的對象。你可能想用一個動畫程序來代表現實世界中的狗,或者用可以控制電子自行車的程序來代表現實世界的自行車。同樣你可以使用軟件對象來造型抽象的概念,比如,事件是一個用在GUI窗口系統的公共對象,它可以代表用户按下鼠標按鈕或者鍵盤上的按鍵的反應。
如圖1是一個軟件對象的公共可視代表。軟件對象的狀態和行為都可以用在對象中的變量和方法來表達。構造現實世界的自行車的軟件對象要有指示自行車的當前狀態的變量:速度為20mps,它的當前檔位為第三檔。這些變量就是我們熟知的實例變量,因為它們包含了用於特殊自行車對象的狀態,並且在面向對象技術中,特殊的對象稱為實例。除了變量,軟件自行車同樣有用於剎車、改變踏板步調以及改變檔位的方法。這些方法就是熟知的實例方法因為它們檢查或者改變特殊自行車實例的狀態。
以上的對象圖顯示了對象的變量組成了圓心部分。方法處在變量的四周並且在程序中從其它對象隱藏了對象的核心。用保護方法的方法來包裝對象的變量稱為封裝。這個對象圖就是對象理想的表示法,也是面向對象系統設計者努力的最後目標。然而這並不是全部的內容。通常,出於某種現實的理由,對象可能暴露它的一些變量或者隱藏一些方法。在JAVA編程語言中,一個對象可以為變量和方法指定四種訪問等級中的一種。這個訪問等級決定哪個對象和類可以訪問變量或者方法。
object軟件集
總述
object模塊性
對象的源代碼可以獨立於其它的對象源代碼來進行編寫和維護。同樣,對象可以很容易地在系統中傳遞。你可以將你的自行車對象給其它的對象,它仍然可以正常工作。
object信息隱藏
一個對象如果有一個公共的界面,那麼其它的對象就可以與之進行通訊。這個對象可以維護私人的信息和方法,它可以在任何時候被改變而不影響依賴於它的其它對象。所以你不必理解自行車中齒輪的機理就可以使用它。
object創建原因
自定義對象本身不會自動地在代碼中加入新功能。通常情況下,為達到相同的效果,可以使用另一種不涉及創建對象的方法。這些對象所能做的就是使複雜的操作看起來更簡單,使複雜的應用程序更加具有自我説明性和可維護性,使需要幾小時才能編完代碼的程序對您自己和其他程序員而言可重複利用性更強。實際上,創建自定義對象是一種將代碼包裝起來供其他 Microsoft® Visual Basic® for Applications (VBA)程序員使用的方法,因為與其指出如何調用您的代碼,不如使他們能象使用任何內置對象一樣使用您的自定義對象。 您可以創建完整的自定義對象模型,這些模型在後台有複雜的代碼,但顯示給程序員的應只是相對簡單和直觀的對象語法。事實上,這就是所有 Microsoft® Office 和 VBA 對象模型為您所做的一切,它們把複雜的操作包裝在易於使用的對象、方法、屬性和事件中。例如,當您將 Microsoft® Excel 對象的 Visible 屬性設為 False 時,不必擔心 VBA、Excel 和 Windows 如何協作以隱藏該對象。您可以把精力集中在創建應用程序這一更高目標上
簡單性和可重複利用性自然要有代價。創建自定義對象和對象模型需要一種思考方法,這種方法比起您在 VBA 中已經習慣的那種編程思考方法是不同的,甚至可能是革命性的不同。掌握它會花一些時間。但從長遠來看,用對象編代碼可以提高效率,磨練設計技巧,更容易重複利用代碼,從而能使您成為更好的程序員。
object定義用法
定義一個嵌入的對象。請使用此元素向您的 XHTML 頁面添加多媒體。此元素允許您規定插入 HTML 文檔中的對象的數據和參數,以及可用來顯示和操作數據的代碼。
標籤用於包含對象,比如圖像、音頻、視頻、Java applets、ActiveX、PDF 以及 Flash。
object 的初衷是取代 img 和 applet 元素。不過由於漏洞以及缺乏瀏覽器支持,這一點並未實現。
瀏覽器的對象支持有賴於對象類型。不幸的是,主流瀏覽器都使用不同的代碼來加載相同的對象類型。
而幸運的是,object 對象提供瞭解決方案。如果未顯示 object 元素,就會執行位於 和 之間的代碼。通過這種方式,我們能夠嵌套多個 object 元素(每個對應一個瀏覽器)。
object實例
向 HTML 代碼添加一個對象:
object瀏覽器支持
幾乎所有主流瀏覽器都擁有部分對 標籤的支持。
object提示
註釋: 標籤定義用於對象的 run-time 設置。
註釋:不要對圖像使用 標籤,請使用 標籤代替。
object屬性
可選的屬性
屬性 | 值 | 描述 | DTD |
---|---|---|---|
align | leftrighttopbottom | 定義圍繞該對象的文本對齊方式。 | TF |
archive | URL | 由空格分隔的指向檔案文件的 URL 列表。 | STF |
border | pixels | 定義對象周圍的邊框。 | TF |
classid | class ID | 定義嵌入 Windows Registry 中或某個 URL 中的類的 ID 值, | STF |
codebase | URL | 定義在何處可找到對象所需的代碼,提供一個基準 URL。 | STF |
codetype | MIME type | 通過 classid 屬性所引用的代碼的 MIME 類型。 | STF |
data | URL | 定義引用對象數據的 URL。 | STF |
declare | declare | 定義此對象僅可被聲明 | STF |
height | pixels | 定義對象的高度。 | STF |
hspace | pixels | 定義對象周圍水平方向的空白。 | TF |
name | unique_name | 為對象定義特定的名稱(以便在腳本中使用)。 | STF |
standby | text | 定義當對象正在加載時所顯示的文本。 | STF |
type | MIME_type | 定義被規定在 data 屬性中指定的文件中出現的數據的 MIME 類型。 | STF |
usemap | URL | 規定與對象一同使用的客户端圖像映射的 URL。 | STF |
vspace | pixels | 定義對象的垂直方向的空白。 | TF |
width | pixels | 定義對象的寬度。 | STF |
標準屬性
id, class, title, style, dir, lang, xml:lang,ref,contenteditable,irrelevant,draggable,tabindex
事件屬性
accesskey, tabindex, onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup。
[1]
- 參考資料
-
- 1. HTML 標籤 .W3Cschool[引用日期2017-11-29]