亚欧洲精品在线观看,窝窝影院午夜看片,久久国产成人午夜av影院宅,午夜91,免费国产人成网站,ts在线视频,欧美激情在线一区

java語(yǔ)言

Java面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念

時(shí)間:2025-05-26 20:04:43 java語(yǔ)言 我要投稿
  • 相關(guān)推薦

Java面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念

  Java語(yǔ)言提供類(lèi)、接口和繼承等原語(yǔ),為了簡(jiǎn)單起見(jiàn),只支持類(lèi)之間的單繼承,但支持接口之間的多繼承,并支持類(lèi)與接口之間的實(shí)現(xiàn)機(jī)制,下面是關(guān)于Java面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,歡迎大家閱讀了解!

  對(duì)象

  何謂面向?qū)ο笫鞘裁匆馑寄?

  面向?qū)ο蟪绦蛟O(shè)計(jì)是將人們認(rèn)識(shí)世界過(guò)程中普遍采用的思維方法應(yīng)用到程序設(shè)計(jì)中。對(duì)象是現(xiàn)實(shí)世界中存在的事物,它們是有形的,如某個(gè)人、某種物品;也可以是無(wú)形的,如某項(xiàng)計(jì)劃、某次商業(yè)交易。對(duì)象是構(gòu)成現(xiàn)實(shí)世界的一個(gè)獨(dú)立單位,人們對(duì)世界的認(rèn)識(shí),是從分析對(duì)象的特征入手的。

  對(duì)象的特征分為靜態(tài)特征和動(dòng)態(tài)特征兩種。靜態(tài)的特征指對(duì)象的外觀、性質(zhì)、屬 性等;動(dòng)態(tài)的特征指對(duì)象具有的功能、行為等?陀^事物是錯(cuò)綜復(fù)雜的,但人們總是 從某一目的出發(fā),運(yùn)用抽象分析的能力,從眾多的特征中抽取最具代表性、最能反映 對(duì)象本質(zhì)的若干特征加以詳細(xì)研究。

  人們將對(duì)象的靜態(tài)特征抽象為屬性,用數(shù)據(jù)來(lái)描述,在 Java 語(yǔ)言中稱(chēng)之為變量;人們將對(duì)象的動(dòng)態(tài)特征抽象為行為,用一組代碼來(lái)表示,完成對(duì)數(shù)據(jù)的操作,在 Java 語(yǔ)言中稱(chēng)之為方法。一個(gè)對(duì)象由一組屬性和一組對(duì)屬性進(jìn)行操作的方法構(gòu)成。

  類(lèi)

  將具有相同屬性及相同行為的一組對(duì)象稱(chēng)為類(lèi)。廣義地講,具有共同性質(zhì)的事物的集合就稱(chēng)為類(lèi)。

  在面向?qū)ο蟪绦蛟O(shè)計(jì)中,類(lèi)是一個(gè)獨(dú)立的單位,它有一個(gè)類(lèi)名,其內(nèi)部包括成員變量,用于描述對(duì)象的屬性;還包括類(lèi)的成員方法,用于描述對(duì)象的行為。在 Java 程 序設(shè)計(jì)中,類(lèi)被認(rèn)為是一種抽象數(shù)據(jù)類(lèi)型,這種數(shù)據(jù)類(lèi)型,不但包括數(shù)據(jù),還包括方法。這大大地?cái)U(kuò)充了數(shù)據(jù)類(lèi)型的概念。

  類(lèi)是一個(gè)抽象的概念,要利用類(lèi)的方式來(lái)解決問(wèn)題,必須用類(lèi)創(chuàng)建一個(gè)實(shí)例化的類(lèi)對(duì)象,然后通過(guò)類(lèi)對(duì)象去訪問(wèn)類(lèi)的成員變量,去調(diào)用類(lèi)的成員方法來(lái)實(shí)現(xiàn)程序的功能。這如同“汽車(chē)”本身是一個(gè)抽象的概念,只有使用了一輛具體的汽車(chē),才能感受到汽車(chē)的功能。

  一個(gè)類(lèi)可創(chuàng)建多個(gè)類(lèi)對(duì)象,它們具有相同的屬性模式,但可以具有不同的屬性值。Java 程序?yàn)槊恳粋(gè)類(lèi)對(duì)象都開(kāi)辟了內(nèi)存空間,以便保存各自的屬性值。

  面向?qū)ο蟮某绦蛟O(shè)計(jì)有三個(gè)主要特征:封裝性,繼承性,多態(tài)性

  封裝性

  封裝是面向?qū)ο蟮姆椒ㄋ鶓?yīng)遵循的一個(gè)重要原則。

  它有兩個(gè)含義:一是指把對(duì)象的屬性和行為看成一個(gè)密不可分的整體,將這兩者“封裝”在一個(gè)不可分割的獨(dú)立單位(即對(duì)象)中。

  另一層含義指“信息隱蔽”,把不需要讓外界知道的信息隱藏起來(lái),有些對(duì)象的屬性及行為允許外界用戶(hù)知道或使用,但不允許更改,而另一些屬性或行為,則不允許外界知曉;或只允許使用對(duì)象的功能,而盡可能隱蔽對(duì)象的功能實(shí)現(xiàn)細(xì)節(jié)。

  封裝機(jī)制在程序設(shè)計(jì)中表現(xiàn)為,把描述對(duì)象屬性的變量及實(shí)現(xiàn)對(duì)象功能的方法合在一起,定義為一個(gè)程序單位,并保證外界不能任意更改其內(nèi)部的屬性值,也不能任意調(diào)動(dòng)其內(nèi)部的功能方法。

  封裝機(jī)制的另一個(gè)特點(diǎn)是,為封裝在一個(gè)整體內(nèi)的變量及方法規(guī)定了不同級(jí)別的 “可見(jiàn)性”或訪問(wèn)權(quán)限。

  繼承性

  繼承是面向?qū)ο蠓椒ㄖ械闹匾拍,并且是提高軟件開(kāi)發(fā)效率的重要手段。

  首先擁有反映事物一般特性的類(lèi),然后在其基礎(chǔ)上派生出反映特殊事物的類(lèi)。如已有的汽車(chē)的類(lèi),該類(lèi)中描述了汽車(chē)的普遍屬性和行為,進(jìn)一步再產(chǎn)生轎車(chē)的類(lèi),轎車(chē)的類(lèi)是繼承于汽車(chē)類(lèi),轎車(chē)類(lèi)不但擁有汽車(chē)類(lèi)的全部屬性和行為,還增加轎車(chē)特有的屬性和行為。

  在 Java 程序設(shè)計(jì)中,已有的類(lèi)可以是 Java 開(kāi)發(fā)環(huán)境所提供的一批最基本的程序——類(lèi)庫(kù)。用戶(hù)開(kāi)發(fā)的程序類(lèi)是繼承這些已有的類(lèi)。這樣,現(xiàn)在類(lèi)所描述過(guò)的屬性及行為,即已定義的變量和方法,在繼承產(chǎn)生的類(lèi)中完全可以使用。被繼承的類(lèi)稱(chēng)為父類(lèi)或超類(lèi),而經(jīng)繼承產(chǎn)生的類(lèi)稱(chēng)為子類(lèi)或派生類(lèi)。根據(jù)繼承機(jī)制,派生類(lèi)繼承了超類(lèi)的所有成員,并相應(yīng)地增加了自己的一些新的成員。

  面向?qū)ο蟪绦蛟O(shè)計(jì)中的繼承機(jī)制,大大增強(qiáng)了程序代碼的可復(fù)用性,提高了軟件的開(kāi)發(fā)效率,降低了程序產(chǎn)生錯(cuò)誤的可能性,也為程序的修改擴(kuò)充提供了便利。

  若一個(gè)子類(lèi)只允許繼承一個(gè)父類(lèi),稱(chēng)為單繼承;若允許繼承多個(gè)父類(lèi),稱(chēng)為多繼承。目前許多面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言不支持多繼承。而 Java 語(yǔ)言通過(guò)接口(interface) 的方式來(lái)彌補(bǔ)由于 Java 不支持多繼承而帶來(lái)的子類(lèi)不能享用多個(gè)父類(lèi)的成員的缺憾。

  類(lèi)的多態(tài)性

  多態(tài)是面向?qū)ο蟪绦蛟O(shè)計(jì)的又一個(gè)重要特征。多態(tài)是允許程序中出現(xiàn)重名現(xiàn)象。 Java 語(yǔ)言中含有方法重載與成員覆蓋兩種形式的多態(tài)。

  方法重載:在一個(gè)類(lèi)中,允許多個(gè)方法使用同一個(gè)名字,但方法的參數(shù)不同,完成的功能也不同。

  成員覆蓋:子類(lèi)與父類(lèi)允許具有相同的變量名稱(chēng),但數(shù)據(jù)類(lèi)型不同,允許具有相同的方法名稱(chēng),但完成的功能不同。

  多態(tài)的特性使程序的抽象程度和簡(jiǎn)捷程度更高,有助于程序設(shè)計(jì)人員對(duì)程序的分 組協(xié)同開(kāi)發(fā)。

【Java面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念】相關(guān)文章:

Java面向?qū)ο蠛兔嫦蜻^(guò)程的區(qū)別11-03

java面向?qū)ο缶幊讨v解06-18

Java面向?qū)ο笾R(shí)鞏固11-01

php面向?qū)ο蟮某绦蛟O(shè)計(jì)10-12