97骚碰,毛片大片免费看,亚洲第一天堂,99re思思,色好看在线视频播放,久久成人免费大片,国产又爽又色在线观看

歡迎來(lái)到瑞文網(wǎng)!

Java基礎知識點(diǎn)總結(2)

學(xué)習總結 時(shí)間:2018-03-07 我要投稿
【m.uydoc.com - 學(xué)習總結】

  4.1定義一個(gè)類(lèi)

  *使用class關(guān)鍵字定義類(lèi),注意類(lèi)名大寫(xiě)

  *成員屬性:成員屬性不賦值會(huì )有默認值(默認值規則參考PPT)

  *成員方法

  *構造方法:沒(méi)有任何返回值,名字與類(lèi)名一樣,構造方法的本意是用來(lái)初始化對象(初始化對象的屬性值)

  4.2 實(shí)例化對象:Student s = new Student();

  *使用new + 構造方法實(shí)例化對象

  *new 在堆中開(kāi)辟了對象的空間,并且給屬性賦上默認值

  *接下來(lái)調用構造方法,執行構造方法中的代碼

  *最后返回對象的引用

  4.3區分引用類(lèi)型與基本數據類(lèi)型

  *引用類(lèi)型的變量在內存中有兩塊區域,一塊是引用本身,另一塊是引用所指向的對象

  *基本數據類(lèi)型在內存中只有一塊空間:里面存著(zhù)值

  4.4如何操作對象:使用.操作符

  *使用對象名.屬性操作對象的屬性(如:stu.age = 18;)

  *使用對象名.方法調用對象的方法(如:stu.study());

  *this:每個(gè)對象都有this,this是指向本身的引用,代表本身

  4.5. 必須能夠獨立寫(xiě)出Point3D的代碼(題目在PPT上)

  5. 訪(fǎng)問(wèn)控制,方法定義與調用,重載,方法重寫(xiě)5.1 訪(fǎng)問(wèn)控制5.1.1 package包的使用

  *使用package 定義包:package只能放在代碼的第一行

  *import:導包,可以到入包下所有import java.io.*;可以導入具體的一個(gè)類(lèi)import java.io.Reader;

  *包的作用:1,分類(lèi);2,隱藏(封裝的作用),3,便于管理

  *java本身提供了一些包:java.lang(核心類(lèi),此包如需要引入),java.util(集合框架以及其他常用類(lèi)),java.io(輸入輸出),java.awt,javax.swing(圖形)

  5.1.2 繼承(簡(jiǎn)單概念):使用extends關(guān)鍵字表示繼承

  *子類(lèi)繼承父類(lèi)的所有屬性

  *子類(lèi)繼承父類(lèi)除private(非同包的時(shí)候也除默認的方法)外的所有方法

  *子類(lèi)對象擁有super引用,表示父類(lèi)的引用,可以使用super明確的調用父類(lèi)的方法或屬性

  5.1.3四個(gè)訪(fǎng)問(wèn)級別,從大到。簆ublic ,protected,默認,private

  *注意訪(fǎng)問(wèn)級別是針對類(lèi)來(lái)講的,不是針對對象!!!!!!!

  *注意類(lèi)的訪(fǎng)問(wèn)修飾符只能使用public 或默認

  *學(xué)了訪(fǎng)問(wèn)控制后:類(lèi)的屬性都寫(xiě)private,通過(guò)set/get方法對屬性進(jìn)行賦值,取值

  5.2 重載與重寫(xiě)

  1.判斷是否是重載,或者是否是重寫(xiě),如果不是重寫(xiě)或者重載,就不受重寫(xiě)重載規則的約束

  5.2.1重載:一個(gè)類(lèi)當中,有方法名相同,參數不同的方法,稱(chēng)為重載

  *不能只改返回值:不能根據方法的返回進(jìn)行重載

  5.2.2重寫(xiě):在繼承當中,子類(lèi)將父類(lèi)的方法重新寫(xiě)了一遍:重寫(xiě)的方法與被重寫(xiě)的方法擁有相同的方法簽名(返回值類(lèi)型,方法名,參數列數)

  *.重寫(xiě)的方法能夠改變被重寫(xiě)的方法的訪(fǎng)問(wèn)級別,注意只能是相等或者擴大

  *.重寫(xiě)的方法不能拋出比被重寫(xiě)方法更多的異常,注意只能縮小異常的范圍

  *.如果被重寫(xiě)的方法是具體的,重寫(xiě)之后不能改為abstract

  5.3 類(lèi)與對象的生命周期

  5.3.1類(lèi)與對象的初始化過(guò)程:

  *靜態(tài)屬性先初始化,而且僅僅初始化一次

  *首先給靜態(tài)屬性進(jìn)行聲明,并賦默認值,然后代碼從上往下執行靜態(tài)代碼塊或靜態(tài)賦值

  *每創(chuàng )建一個(gè)對象,就先實(shí)例化成員屬性:首先給成員屬性聲明,賦默認值,然后.執行賦值語(yǔ)句

  *成員屬性初始化后再調用構造方法

  5.3.2垃圾回收機制

  *java虛擬使用垃圾回收機制進(jìn)行垃圾回收

  *垃圾回收本身是一個(gè)線(xiàn)程(當內存不夠用的時(shí)候,一般會(huì )進(jìn)行垃圾回收)

  *垃圾回收不能通過(guò)程序來(lái)調用,僅僅能夠通過(guò)System.gc()建議虛擬機進(jìn)行垃圾回收

  *當進(jìn)行垃圾回收時(shí),會(huì )調用對象的finalize方法

  5.4 單例模式:一個(gè)類(lèi)僅僅能有一個(gè)實(shí)例(設計模式的一種)

  *構造方法必須為私有的

  *提供靜態(tài)的方法來(lái)獲得對象

  *提供靜態(tài)的屬性,該屬性是該類(lèi)的一個(gè)對象

  6. 繼承,抽象類(lèi),接口

  6.1 繼承:

  6.1.1 繼承的語(yǔ)法:使用extends關(guān)鍵字表示繼承

  *子類(lèi)繼承父類(lèi)所有的屬性

  *私有方法不能被繼承

  *super關(guān)鍵字表示父類(lèi)的引用,可以用super來(lái)調用父類(lèi)的方法或屬性

  6.2.2 繼承中的構造方法:了解下面的知識點(diǎn)以及實(shí)例化對象時(shí)代碼的執行過(guò)程

  *子類(lèi)的構造過(guò)程必須調用其基類(lèi)的構造方法

  *子類(lèi)可以在自己的構造過(guò)程中使用super (arg_list)來(lái)調用基類(lèi)的構造方法

  *如果調用super,必須寫(xiě)在子類(lèi)構造方法的第一行

  *可以使用this(argument_list)調用本類(lèi)的另外的構造方法

  *如果子類(lèi)的構造方法中沒(méi)有顯示的調用基類(lèi)的構造方法,系統默認調用基類(lèi)無(wú)參數的構造方法

  *如果子類(lèi)構造方法中既沒(méi)有顯式的調用基類(lèi)構造方法,基類(lèi)中又沒(méi)有無(wú)參數的構造方法,編譯出錯

  6.3.3 對象的轉型

  *一個(gè)基類(lèi)的引用類(lèi)型變量可以指向其子類(lèi)的對象

  *一個(gè)基類(lèi)的引用不可以訪(fǎng)問(wèn)其子類(lèi)對象新增的成員

  *可以使用instanceof 關(guān)鍵字來(lái)判斷一個(gè)引用類(lèi)型變量所指向的對象是否是制定的類(lèi)型

  *子類(lèi)的對象可以當作基類(lèi)的對象來(lái)使用稱(chēng)作向上轉型,反之稱(chēng)為向下轉型

  *子類(lèi)可以當成父類(lèi)來(lái)使用,無(wú)需顯示轉換

  *父類(lèi)引用轉換為子類(lèi)引用要進(jìn)行強制轉換

  *注意:不兼容的類(lèi)型之間不能進(jìn)行相互轉換(只有具有直接或間接父子關(guān)系的類(lèi)才是兼容的類(lèi)型),否則編譯時(shí)會(huì )報錯

  *注意:兼容類(lèi)型之間的轉換要看對象的實(shí)際類(lèi)型,因此向下轉化時(shí)最好先用instanceof來(lái)判斷是否是某個(gè)類(lèi)型,在轉換,以免報報錯

  6.4.4 多態(tài):也稱(chēng)運行時(shí)綁定:一般是指父類(lèi)的引用指向子類(lèi)對象,通過(guò)父類(lèi)的引用調用被子類(lèi)重寫(xiě)的方法,這個(gè)時(shí)候執行的是子類(lèi)的方法

  *一句話(huà)總結多態(tài):對象實(shí)際是什么類(lèi)型就調用什么類(lèi)型的方法

  *多態(tài)成立的條件:1,要有繼承。2,要有重寫(xiě)。3,必須有父類(lèi)引用指向子類(lèi)對象。

  6.2 抽象類(lèi):用abstract修飾的類(lèi)稱(chēng)為抽象類(lèi)(抽象的本意是不具體)

  1.抽象方法不能有方法體

  2.抽象類(lèi)不能被實(shí)例化。

  3.含有抽象方法的類(lèi)必須被聲明為抽象類(lèi),

  4.子類(lèi)繼承抽象類(lèi),必須被重寫(xiě)父類(lèi)的抽象方法,否則本身也必須被聲明為抽象類(lèi)

  5.抽象類(lèi)中的方法和屬性沒(méi)有其他規則來(lái)約束,抽象類(lèi)中沒(méi)有抽象的方法是可以的,抽象類(lèi)中可以有非抽象的方法和屬性

  6.3 static :靜態(tài)關(guān)鍵字

  6.3.1static屬性:在類(lèi)中,用static申明的成員變量叫靜態(tài)變量,他為該類(lèi)的公用變量,在第一使用時(shí)被初始化,對于該類(lèi)的所有對象來(lái)說(shuō),static成員變量只有一份

  6.3.2 static方法:用static聲明的方法為靜態(tài)方法,在調用該方法時(shí),不會(huì )將對象的引用傳遞給它,所以static方法中不可以訪(fǎng)問(wèn)非static的成員。

  *靜態(tài)方法中不能訪(fǎng)問(wèn)非靜態(tài)成員

  *靜態(tài)成員方法沒(méi)有this引用

  *可以通過(guò)類(lèi)名(不需要實(shí)例化)或對象引用來(lái)訪(fǎng)問(wèn)靜態(tài)成員

  6.4 final關(guān)鍵字:

  final表示最終的意思

  *final的變量的值不能夠被改變

  *final的成員變量

  *final的局部變量(形參)

  *final的方法不能夠被重寫(xiě)

  *final的類(lèi)不能夠被繼承

  6.5 接口:interface

  1. 使用interface定義一個(gè)接口,使用implements實(shí)現一個(gè)接口

  2. 接口中的屬性只能為public static final類(lèi)型(靜態(tài)常量)

  3. 接口中的方法只能為public abstract類(lèi)型

  4. 一個(gè)類(lèi)可以實(shí)現多個(gè)接口,但只能繼承一個(gè)類(lèi)

  5. 接口也可以繼承接口

  7. 異常處理

  java的異常處理機制

  異常的關(guān)鍵字Exception

  try,catch,finally,throw,throws關(guān)鍵字

  7.1什么是異常,為什么要引入異常

  *java程序運行時(shí)出錯,java就拋出異常,程序立即終止(也可以說(shuō)程序崩潰)

  *java將錯誤信息封裝在異常對象里拋出

  *學(xué)會(huì )查看異常的信息:異常的名字,異常的信息,程序拋異常的位置

  *java引入異常處理機制,是防止程序出錯崩潰

  7.2java的異常的分類(lèi)

  *java的拋出的錯誤用異常類(lèi)來(lái)表示,java擁有一個(gè)異常體系(有許多異常類(lèi),并且相互之間具有關(guān)系)

  *java里面的所有異常都是Throwable的子類(lèi)

  *java虛擬機的異常是Error的子類(lèi),一般不需進(jìn)行處理(因為沒(méi)法進(jìn)行處理)

  *除Error之外還有Exception,Exception分為兩類(lèi):RuntimeException(運行時(shí)異常),被檢查異常(除了RuntimeException都是被檢查異常)

  *RuntimeException(運行時(shí)異常,可以不捕獲或聲明拋出,編譯不會(huì )報錯,一般是控制不當造成的),可檢查異常(必須捕獲或聲明拋出,這類(lèi)異常通常需要檢測并處理,一般使用資源時(shí)造成的)

  *幾個(gè)常見(jiàn)的異常:NullPointerException(空指針),IndexOutOfBoundsException(索引越界),SQLException(數據庫異常),IOException(文件異常)

  7.3異常的處理方式

  *使用try,catch,finally進(jìn)行處理

  *不處理,使用throws,throw交給別人來(lái)處理

  7.4try,catch,finally中程序的運行過(guò)程

  *嘗試執行try里面的語(yǔ)句

  *一次運行當中最多執行一個(gè)catch塊,如果沒(méi)有拋出異常,catch塊不執行

  *finally總會(huì )執行,不管有沒(méi)有拋出異常

  *如果try塊里面有return語(yǔ)句,finally也會(huì )執行

  7.5區分RuntimeException與被檢查異常

  *RuntimeException不需要捕獲或聲明拋出(但是如果你捕獲或聲明拋出也不會(huì )有錯)

  *被檢查異常必須要捕獲或者聲明拋出

熱門(mén)文章