freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java學(xué)習(xí)筆記-文庫(kù)吧

2025-07-20 18:28 本頁(yè)面


【正文】 續(xù)的,二維數(shù)組實(shí)際上是一維數(shù)組中有存儲(chǔ)了一維數(shù)組的引用。初始化數(shù)組 1) 初始化、創(chuàng)建、和聲明分開(kāi) int[] i; i = new int[2]; i[0] = 0; i[1] = 1; 2) 初始化、創(chuàng)建、和聲明在同一時(shí)間 int[] i = {0,1}; Car[] c = {new Car(),new Car()}; 多維數(shù)組 1) 有效定義 int[][] i1 = new int[2][3]; (同時(shí)給定一維,二維的空間) int[][] i2 = new int[2][]; (給定一維的空間,二維空間待定) i2[0] = new int[2],i2[1] = new int[3]; *C++中 int[][] =new int[][3];有效 2) 無(wú)效定義 int[][] i1 = new int[][3]; 3) 數(shù)組長(zhǎng)度 數(shù)組的屬性length(在二維數(shù)組中這個(gè)屬性只代表第一維的長(zhǎng)度) int[] i = new int[5]; int len = ;//len = 5; Student[][] st = new Student[4][6]; len = ;//len = 4; len = st[0].length;//len = 6; 數(shù)組拷貝(Object src, int srcPos, Object dest, int destPos, int length);src源數(shù)組,srcPos從第幾位開(kāi)始拷貝,dest目標(biāo)數(shù)組,destPos目標(biāo)數(shù)組放置的起始位置,length,表示要拷貝的長(zhǎng)度??截愐粋€(gè)數(shù)組到另一個(gè)數(shù)組。類(lèi)的對(duì)象的創(chuàng)建和對(duì)象數(shù)組。java中的類(lèi)的對(duì)象的創(chuàng)建,要先創(chuàng)建這個(gè)對(duì)象的引用, 例如:Car c;然后用new這個(gè)關(guān)鍵字創(chuàng)建一個(gè)對(duì)象的實(shí)例(對(duì)象的空間) 例如:c=new Car();,然后對(duì)象的實(shí)例的空間首地址賦值給對(duì)象的引用。多個(gè)對(duì)象的引用可以同時(shí)引用自同一個(gè)對(duì)象的實(shí)例,但是對(duì)象的引用只能引用一個(gè)對(duì)象的實(shí)例。對(duì)象的引用和對(duì)象的實(shí)例間就像是牽著氣球的線(xiàn)和氣球一樣。注意:只有一個(gè)沒(méi)有被任何 對(duì)象的引用 所引用 的對(duì)象的實(shí)例才會(huì)邊城垃圾等待被垃圾回收。對(duì)象數(shù)組例:Car[] c=new Car[3]; c[0]=new Car(); 注意:存放基本類(lèi)型的數(shù)組的數(shù)據(jù)是直接存放在數(shù)組的空間中,而對(duì)象的數(shù)組在數(shù)組空間中存放的則是對(duì)象的引用。定義在類(lèi)中類(lèi)的屬性是實(shí)例變量,定義在類(lèi)的方法中的變量是局部變量。實(shí)例變量是保存在對(duì)象空間中的,而局部變量則是在方法調(diào)用的分配空間,調(diào)用結(jié)束后就釋放空間。注意:在類(lèi)的定義中屬性的定義和方法的定義 必須寫(xiě)在類(lèi)里。注意:系統(tǒng)會(huì)自動(dòng)初始化實(shí)例變量,數(shù)字類(lèi)型為0 ,布爾類(lèi)型為false ,引用類(lèi)型為null。局部變量需要初始化,必須賦初值。如果不賦初值無(wú)法通過(guò)編譯。Java中的方法調(diào)用中參數(shù)傳遞有兩種,一個(gè)是對(duì)于參數(shù)是基本類(lèi)型的使用的是值傳遞(直接傳參數(shù)的值),另一個(gè)是引用傳遞,它是用于參數(shù)是類(lèi)的對(duì)象,它傳遞的是這個(gè)對(duì)象的引用。面向?qū)ο蟮乃枷隺nything is Object(萬(wàn)物皆對(duì)象)抽象,從對(duì)具體的對(duì)象中抽取有用信息。對(duì)象有其固有屬性,對(duì)象的方法,即對(duì)象的行為(對(duì)象能做什么)對(duì)象本身是簡(jiǎn)單的(功能簡(jiǎn)單),多個(gè)對(duì)象可以組成復(fù)雜的系統(tǒng)(對(duì)象之間彼此調(diào)用對(duì)方的方法)對(duì)象應(yīng)當(dāng)是各司其職(功能簡(jiǎn)單),各盡所能(把自己的功能作到最好)。(弱耦合性實(shí)現(xiàn)了前面所述的對(duì)象的特點(diǎn))對(duì)象的耦合性,是對(duì)象之間的聯(lián)系,對(duì)象和系統(tǒng)之間的聯(lián)系。對(duì)象的耦合性要盡量的弱,也就是對(duì)象之間的聯(lián)系盡可能的弱,對(duì)象和系統(tǒng)之間的聯(lián)系盡可能的弱。系統(tǒng)的可插入性,是在系統(tǒng)中加入新的對(duì)象之后的系統(tǒng)穩(wěn)定性。對(duì)象的可替換性,是在系統(tǒng)中替換原有的對(duì)象之后的系統(tǒng)的穩(wěn)定性。復(fù)用性,即對(duì)象可否被重復(fù)使用,對(duì)象的功能越簡(jiǎn)單,復(fù)用性就越好。(對(duì)象的耦合性弱,復(fù)用性就比較強(qiáng))面向過(guò)程是先有算法,后又?jǐn)?shù)據(jù)結(jié)構(gòu)(怎么解決問(wèn)題)面向?qū)ο笫窍扔袑?duì)象(數(shù)據(jù)結(jié)構(gòu)),后有算法。(用什么做)類(lèi)是某些有著相同屬性的集合的抽象。類(lèi)是一個(gè)類(lèi)對(duì)象的模板,對(duì)象是類(lèi)的具體化。類(lèi)是一個(gè)新的數(shù)據(jù)類(lèi)型,類(lèi)的對(duì)象。注意:局部變量的作用范圍是在定義他的代碼塊以?xún)?nèi),局部變量要先賦值后使用,在以一個(gè)重合的作用于范圍內(nèi)不允許兩個(gè)局部變量命名沖突。局部變量局部?jī)?yōu)先,且在于實(shí)例變量同名時(shí)會(huì)副該局部變量。變量 包括簡(jiǎn)單變量(原始數(shù)據(jù)類(lèi)型),對(duì)象變量。方法的定義:1,方法的修飾符(多個(gè)修飾符出現(xiàn)的順序無(wú)關(guān)) |2,方法的返回值類(lèi)型 |順3,方法名 |序4,方法的參數(shù)表 |向5,方法中允許拋出的異常 |下java中不能夠在返回語(yǔ)句后寫(xiě)任何代碼。JVM+解釋器=JRE,JRE+類(lèi)庫(kù)=JDKjava中方法的重載(overload)方法名相同,參數(shù)表不同,返回值類(lèi)型可以不同。調(diào)用時(shí)要給出明確參數(shù)并確定調(diào)用某一方法。在編譯時(shí),編譯器會(huì)根據(jù)參數(shù)選擇適當(dāng)?shù)姆椒?,所以重載也叫編譯時(shí)多態(tài)。就近向上匹配原則如果方法的參數(shù)表中的數(shù)據(jù)類(lèi)型和調(diào)用時(shí)給出的參數(shù)類(lèi)型不盡相同時(shí)會(huì)根據(jù)向上匹配的就近原則。(類(lèi)型就近向上轉(zhuǎn)化匹配)注意:調(diào)用時(shí)要給出明確參數(shù)并確定調(diào)用某一方法,否則編譯會(huì)出錯(cuò)。對(duì)象使用者(調(diào)用其他對(duì)象的方法)對(duì)象(對(duì)象中的方法被調(diào)用時(shí)根據(jù)參數(shù)進(jìn)行自己進(jìn)行選擇)一類(lèi)方法,但跟據(jù)不同的參數(shù)會(huì)有差異,對(duì)象回根據(jù)參數(shù)判斷,對(duì)對(duì)象調(diào)用者透明。創(chuàng)建對(duì)象的過(guò)程:1,分配空間 2,初始化屬性 3,調(diào)用構(gòu)造方法(有前提,不考慮繼承關(guān)系)構(gòu)造方法的寫(xiě)法:沒(méi)有返回值類(lèi)型,構(gòu)造方法的方法命名必須和類(lèi)名相同。如果在類(lèi)中不寫(xiě)構(gòu)造方法,系統(tǒng)會(huì)提供一個(gè)無(wú)參的構(gòu)造方法。注意:最好在寫(xiě)類(lèi)時(shí)提供一個(gè)無(wú)參的構(gòu)造方法。獲得對(duì)象的方式通過(guò)new(在堆空間中申請(qǐng)分配空間),new 類(lèi)名(),可以通過(guò)這種形式或的一個(gè)對(duì)象,這時(shí)的對(duì)象是無(wú)法使用,必須把的他的地址存放近一個(gè)對(duì)象變量才能夠使用。例如 :Car c=new Car();有參的構(gòu)造方法在被調(diào)用時(shí),在用new關(guān)鍵字或的對(duì)象時(shí)初始化,例如:Car c=new Car(yellow)對(duì)象變量中存放的是對(duì)象的引用(地址的封裝形式)this關(guān)鍵字表示當(dāng)前對(duì)象(哪個(gè)對(duì)象調(diào)用了方法,哪個(gè)對(duì)象就是當(dāng)前對(duì)象),可以用來(lái)區(qū)分實(shí)例變量和局部變量。this(),他表示掉用本類(lèi)其他的構(gòu)造方法,注,只能寫(xiě)在構(gòu)造方法的第一行。java中的參數(shù)傳遞,簡(jiǎn)單類(lèi)型的變量傳遞的是數(shù)值,對(duì)象變量的傳遞則傳遞的一個(gè)引用(地址)面向?qū)ο蟮娜筇卣鞣庋b、繼承、多態(tài)。java中的封裝封裝,一個(gè)對(duì)象和外界的聯(lián)系應(yīng)當(dāng)通過(guò)一個(gè)統(tǒng)一的接口,應(yīng)當(dāng)公開(kāi)的公開(kāi),應(yīng)當(dāng)隱藏的隱藏。(對(duì)象的屬性應(yīng)當(dāng)隱藏),一個(gè)對(duì)象的內(nèi)部是透明的,就是把對(duì)象內(nèi)部的可透明性和隱藏的特性區(qū)分開(kāi),該透明的透明,該隱藏的隱藏。(封裝的屬性)java中類(lèi)的屬性的訪(fǎng)問(wèn)權(quán)限的默認(rèn)值不是private,要想隱藏該屬性或方法,就可以加private(私有)修飾符,來(lái)限制只能夠在類(lèi)的內(nèi)部進(jìn)行訪(fǎng)問(wèn)。對(duì)于類(lèi)中的私有屬性,要對(duì)其給出一對(duì)方法(getXxx(),setXxx())訪(fǎng)問(wèn)私有屬性,保證對(duì)私有屬性的操作的安全性。方法的封裝對(duì)于方法的封裝,該公開(kāi)的公開(kāi),該隱藏的隱藏。方法公開(kāi)的是方法的聲明(定義),即(只須知道參數(shù)和返回值就可以調(diào)用該方法),隱藏方法的實(shí)現(xiàn)會(huì)使實(shí)現(xiàn)的改變對(duì)架構(gòu)的影響最小化。封裝會(huì)使方法實(shí)現(xiàn)的改變對(duì)架構(gòu)的影響最小化。完全的封裝,類(lèi)的屬性全部私有化,并且提供一對(duì)方法來(lái)訪(fǎng)問(wèn)屬性。java中的繼承繼承,是對(duì)有著共同特性的多類(lèi)事物,進(jìn)行再抽象成一個(gè)類(lèi)。這個(gè)類(lèi)就是多類(lèi)事物的父類(lèi)。父類(lèi)的意義在于可以抽取多類(lèi)事物的共性。java中的繼承要使用extends關(guān)鍵字,并且java中只允許單繼承,也就是一個(gè)類(lèi)只能有一個(gè)父類(lèi)。這樣就是繼承關(guān)系呈樹(shù)狀,體現(xiàn)了java的簡(jiǎn)單性。子類(lèi)只能繼承在父類(lèi)中可以訪(fǎng)問(wèn)的屬性和方法(實(shí)際上父類(lèi)中私有的屬性和方法也會(huì)被繼承但子類(lèi)中無(wú)法訪(fǎng)問(wèn)罷了)。訪(fǎng)問(wèn)控制修飾符(可以修飾屬性和方法)private修飾符,表示只有本類(lèi)內(nèi)部可以訪(fǎng)問(wèn)。default修飾符,方法不加修飾符,會(huì)默認(rèn)為default,表示在同一個(gè)包中可以訪(fǎng)問(wèn),父子類(lèi)在同一包中,子類(lèi)可以繼承父類(lèi)的相應(yīng)內(nèi)容。(可以修飾類(lèi))protected(保護(hù))修飾符,表示同一包中可以訪(fǎng)問(wèn),不同包的子類(lèi)也可以訪(fǎng)問(wèn)繼承。public修飾符,表示公開(kāi),在任何地方都可以訪(fǎng)問(wèn)。(可以修飾類(lèi))修飾符的權(quán)限是由上而下逐漸變寬的。繼承的意義在于子類(lèi)可以在父類(lèi)的基礎(chǔ)之上對(duì)父類(lèi)的功能進(jìn)行發(fā)展,繼承可以使系統(tǒng)的耦合性降低,也就是使對(duì)象間的聯(lián)系便的松散,使多類(lèi)對(duì)象間的聯(lián)系用其父類(lèi)對(duì)象代替。注意:構(gòu)造方法不能被繼承。父類(lèi)的屬性及方法的確定要從子類(lèi)的角度來(lái)看子類(lèi)間的共性,當(dāng)所有子類(lèi)都有這個(gè)屬性時(shí),就應(yīng)當(dāng)考慮是否該放在父類(lèi)中,方法也是如此,方法可以被看作是對(duì)象的行為,而類(lèi)的方法這時(shí)這一類(lèi)對(duì)象所共有的行為,所以也應(yīng)當(dāng)在方法的確定時(shí)注意是不是所有的子類(lèi)型中都需要有這種方法,并且會(huì)根據(jù)不同的類(lèi)型的行為的方式也不同才可以覆蓋著個(gè)方法。java中方法的覆蓋子類(lèi)中有和父類(lèi)中可訪(fǎng)問(wèn)(可繼承到子類(lèi))的同名同返回類(lèi)型同參數(shù)表的方法,就會(huì)覆蓋從父類(lèi)繼承來(lái)的方法。注意:,需要方法的返回值,參數(shù)表,方法名必須嚴(yán)格相同,子類(lèi)的中覆蓋的方法的返回值可以是父類(lèi)中被覆蓋的方法的返回值類(lèi)型的子類(lèi)型。注意:子類(lèi)的方法覆蓋父類(lèi)的方法時(shí),方法的修飾符要么相同,要么子類(lèi)中的方法的修飾符表示的訪(fǎng)問(wèn)權(quán)限要寬于父類(lèi)。父類(lèi)中的私有方法,不能被繼承到子類(lèi),就是說(shuō)子類(lèi)中即使將其覆蓋了也不會(huì)有多態(tài)。覆蓋的意義:對(duì)從父類(lèi)中繼承的方法的發(fā)展。注意:父子類(lèi)中有同名的屬性不叫子類(lèi)覆蓋父類(lèi)的屬性,叫做屬性的遮蓋(shadow)。當(dāng)構(gòu)造有繼承關(guān)系的對(duì)象的步驟1,遞歸的構(gòu)造父類(lèi)的對(duì)象2,分配空間3,初始化本類(lèi)實(shí)例變量(屬性)4,調(diào)用本類(lèi)的構(gòu)造方法注意:子類(lèi)對(duì)象中其實(shí)包含著父類(lèi)的對(duì)象,也就是父類(lèi)對(duì)象加上子類(lèi)對(duì)象,才是完整的子類(lèi)對(duì)象的實(shí)例。super關(guān)鍵字super(),表示在子類(lèi)的構(gòu)造方法中調(diào)用父類(lèi)的構(gòu)造方法(可以通過(guò)這種方法在子類(lèi)的構(gòu)造方法中初始化父類(lèi)中的屬性),super()(),在子類(lèi)的構(gòu)造方中指明構(gòu)造父類(lèi)時(shí)調(diào)用哪一個(gè)父類(lèi)的構(gòu)造方法構(gòu)造父類(lèi)。super,這里所表示的是一個(gè)父類(lèi)的對(duì)象,可以通過(guò)super來(lái)使用父類(lèi)中可以訪(fǎng)問(wèn)的方法(可以在父類(lèi)中定義setXxx(),getXxx()方法來(lái)訪(fǎng)問(wèn)父類(lèi)中的私有屬性),super可以屏蔽父子類(lèi)中同名屬性的沖突。注意:在寫(xiě)類(lèi)的時(shí)候,一定要寫(xiě)默認(rèn)無(wú)參的構(gòu)造方法,如果一個(gè)構(gòu)造方法的第一句既不是this(),也不是super()時(shí),那么就會(huì)在這里隱含的調(diào)用他的父類(lèi)的無(wú)參的構(gòu)造方法,即隱含的有super()。少覆蓋原則:既子類(lèi)應(yīng)當(dāng)盡量少的覆蓋父類(lèi)方法,如果覆蓋了父類(lèi)的大多數(shù)方法,那就應(yīng)當(dāng)考慮是否應(yīng)當(dāng)有繼承關(guān)系java中的多態(tài)(以子類(lèi)覆蓋了父類(lèi)的方法為前提)多態(tài),把子類(lèi)對(duì)象主觀的看作是其父類(lèi)型的對(duì)象,那么父類(lèi)型就可以是很多種類(lèi)型。多態(tài),編譯時(shí)多態(tài)(方法的重載)   運(yùn)行時(shí)多態(tài)(多態(tài))編譯時(shí)類(lèi)型,也就是可以被看作的類(lèi)型,主觀認(rèn)定。運(yùn)行時(shí)類(lèi)型,也就是實(shí)際的對(duì)象實(shí)例的類(lèi)型,客觀不可改變(也是被看作類(lèi)型的子類(lèi)型)對(duì)于一個(gè)對(duì)象來(lái)說(shuō),在對(duì)象產(chǎn)生時(shí),運(yùn)行時(shí)類(lèi)型就已經(jīng)確定不會(huì)再改變,編譯時(shí)類(lèi)型可以和運(yùn)行時(shí)類(lèi)型不同。在對(duì)象變量聲明時(shí)可以確定其運(yùn)行時(shí)類(lèi)型,但是編譯時(shí)類(lèi)型對(duì)象變量背后所指向運(yùn)行時(shí)類(lèi)型則可以是其本類(lèi)型或者是其子類(lèi)型。多態(tài)三特性1,對(duì)象實(shí)例確定則不可改變(客觀不可改變)2,只能調(diào)用編譯時(shí)類(lèi)型所定義的方法。3,運(yùn)行時(shí)會(huì)根據(jù)運(yùn)行時(shí)類(lèi)型去調(diào)用相應(yīng)類(lèi)型中定義的方法。多態(tài)的意義:在需要使用一類(lèi)對(duì)象的共性時(shí),可以用多來(lái)屏蔽掉其子類(lèi)中的差異。注意:類(lèi)的屬性是沒(méi)有多態(tài)的,只會(huì)根據(jù)編譯時(shí)類(lèi)型訪(fǎng)問(wèn)。只有子類(lèi)覆蓋了父類(lèi)的方法,且把子類(lèi)對(duì)象黨作父類(lèi)類(lèi)型來(lái)看時(shí)才會(huì)有多態(tài)。要注意區(qū)分子類(lèi)中的方法重載。對(duì)于方法的重載,則是會(huì)使用編譯時(shí)類(lèi)型來(lái)進(jìn)行相應(yīng)的方法調(diào)用。兩種復(fù)用1,白箱復(fù)用,也就是繼承復(fù)用,父類(lèi)中的可以被子類(lèi)訪(fǎng)問(wèn)到的就可以被繼承,這樣會(huì)有些不需要的內(nèi)容被繼承下來(lái),所以這種方式不太好。2,黑箱復(fù)用,也叫組合復(fù)用,也就是把要復(fù)用代碼的類(lèi)的對(duì)象作為本類(lèi)中的一個(gè)屬性,然后再通過(guò)方法的委托來(lái)實(shí)現(xiàn)由選擇的復(fù)用,方法的委托就是在本類(lèi)的方法內(nèi)部通過(guò)該類(lèi)的對(duì)象調(diào)用要使用類(lèi)的方法。注意:盡量用組合復(fù)用替代繼承復(fù)用。多態(tài)的使用多態(tài)用于參數(shù),可以在方法的參數(shù)中傳入其父類(lèi)類(lèi)型,在運(yùn)行時(shí)會(huì)根據(jù)實(shí)際的運(yùn)行時(shí)類(lèi)型來(lái)在方法中進(jìn)行相應(yīng)的操作。多態(tài)用于返回值,可以在方法的返回值類(lèi)型上是用其實(shí)際返回值的父類(lèi)型,在使用期返回值時(shí)也不比關(guān)心其實(shí)際類(lèi)型。多態(tài)可以使代碼變得更通用,以適應(yīng)需求的變化。也就是定義在父類(lèi)中的方法,可以在子類(lèi)中有不同的實(shí)現(xiàn)將其覆蓋,在為父類(lèi)型的對(duì)象變量賦值相應(yīng)需要功能的子類(lèi)的對(duì)象實(shí)例。java中的修飾符static 表示靜態(tài),它可以修飾屬性,方法和代碼塊。1,s
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1