1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. Java基礎知識點總結

        時間:2023-04-03 09:00:36 學習總結 我要投稿
        • 相關推薦

        Java基礎知識點總結

          Java基礎是編程類專業要學的第一步,那么Java基礎知識點又有什么呢?下面Java基礎知識點總結是小編為大家帶來的,希望對大家有所幫助。

        Java基礎知識點總結

          Java基礎知識點總結

          1. JAVA簡介

          1.1 java體系結構:j2se,javaweb,j2ee

          1.2 java特點:平臺無關(虛擬機),垃圾回收(使得java更加穩定)

          1.3 JDK與JRE,JDK:java開發環境,JRE:java運行環境

          1.4 第一個java程序:HelloWorld,java的入口是main(public static void main(String[] args))

          1.5 java程序的開發步驟:.java 編譯(javac)成.class 運行(java).class文件

          2. 基本數據類型

          2.1標志符:自己可以取名字的地方稱為標志符

          *標志符的規則:1,只能是字母,數字,下劃線,$;不能以數字開頭;嚴格區分大小寫;不能使用關鍵字作為標志符

          2.2關鍵字:關鍵字都是小寫

          2.3常量:如123,“hello”

          *也可以使用final定義常量(請參照Math.PI),如public static final int SLOW_SPEED=1;

          2.4 變量:變量的本質是內存中的一小塊區域,用這個區域保存數據

          *變量申明:類型變量名字

          *變量必須先聲明,再賦值,再使用

          *注意區分基本數據類型的變量與引用數據類型的變量

          *變量的作用域,局部變量與成員變量:變量在哪個大括號里定義,就在哪里有效,出了大括號無效

          2.5 基本數據類型:java數據類型分為兩大類:基本數據類型,引用數據類型

          *基本數據類型分為4類8中:boolean,char,byte,short,int,long,float,double

          *boolean類型只有true,false

          *char是Unicode編碼

          *float,double是有精度的(不是絕對精確的)

          2.6 基本數據類型之間的轉換

          *123字面常量是int型,12.3字面常量是double型,8888888888888這個字面常量有問題(因為它已經超出int的范圍,改成8888888888888L)

          *boolean與其他類型不兼容

          *byte,short,char之間相互運算的時候,先轉換為int,再進行運算

          *小容量的數據類型可以自動轉換為大容量的數據類型:byte,short,char——>int——>long——>float——>double

          *大容量轉換為小容量的數據類型,要進行強制轉換

          *多種數據類型進行運算的時候,先轉換為容量最大的數據類型再進行運算,整個表達式的類型是容量最大的數據類型

          *必須掌握PPT上的習題

          3. 運算符與流程控制3.1運算符:算術,關系,賦值,邏輯(著重注意),位運算符

          *自加自減++,--,注意順序

          *關系運算符的結果是boolean類型

          *邏輯運算符注意短路與&&,短路或||

          *三元運算符(邏輯表達式) ? 表達式一:表達式二

          3.2流程控制語句:條件(if,switch),循環(for,while,do while),break與continue

          3.3 switch的規則:

          *switch只能探測:byte,short,char,int 類型的值(case后面也只能是這4種)

          *switch中小心case的穿透(代碼會一直運行,直到遇到break停止,建議每個case寫一個break)

          *default:如果沒有找到匹配的case,則執行default

          3.4 for,while,do while搞清楚代碼的執行流程(PPT上有圖,必須記住)

          3.5 break,continue

          *都可以用在循環里面,break還可以用在switch中

          *break跳出單前的代碼塊(結束循環)

          *continue:跳過本輪循環,繼續下一輪循環(循環會繼續,僅僅跳過本次)

          3.6 流程控制代碼編寫:可以靈活的組合這些流程控制代碼,注意一定要寫{ }

          4. 面向對象基本語法

          需要大家掌握:類與對象的區別,如何定義一個類,如何實例化一個對象

          4.1定義一個類

          *使用class關鍵字定義類,注意類名大寫

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

          *成員方法

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

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

          *使用new + 構造方法實例化對象

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

          *接下來調用構造方法,執行構造方法中的代碼

          *最后返回對象的引用

          4.3區分引用類型與基本數據類型

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

          *基本數據類型在內存中只有一塊空間:里面存著值

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

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

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

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

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

          5. 訪問控制,方法定義與調用,重載,方法重寫5.1 訪問控制5.1.1 package包的使用

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

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

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

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

          5.1.2 繼承(簡單概念):使用extends關鍵字表示繼承

          *子類繼承父類的所有屬性

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

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

          5.1.3四個訪問級別,從大到。簆ublic ,protected,默認,private

          *注意訪問級別是針對類來講的,不是針對對象!!!!!!!

          *注意類的訪問修飾符只能使用public 或默認

          *學了訪問控制后:類的屬性都寫private,通過set/get方法對屬性進行賦值,取值

          5.2 重載與重寫

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

          5.2.1重載:一個類當中,有方法名相同,參數不同的方法,稱為重載

          *不能只改返回值:不能根據方法的返回進行重載

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

          *.重寫的方法能夠改變被重寫的方法的訪問級別,注意只能是相等或者擴大

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

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

          5.3 類與對象的生命周期

          5.3.1類與對象的初始化過程:

          *靜態屬性先初始化,而且僅僅初始化一次

          *首先給靜態屬性進行聲明,并賦默認值,然后代碼從上往下執行靜態代碼塊或靜態賦值

          *每創建一個對象,就先實例化成員屬性:首先給成員屬性聲明,賦默認值,然后.執行賦值語句

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

          5.3.2垃圾回收機制

          *java虛擬使用垃圾回收機制進行垃圾回收

          *垃圾回收本身是一個線程(當內存不夠用的時候,一般會進行垃圾回收)

          *垃圾回收不能通過程序來調用,僅僅能夠通過System.gc()建議虛擬機進行垃圾回收

          *當進行垃圾回收時,會調用對象的finalize方法

          5.4 單例模式:一個類僅僅能有一個實例(設計模式的一種)

          *構造方法必須為私有的

          *提供靜態的方法來獲得對象

          *提供靜態的屬性,該屬性是該類的一個對象

          6. 繼承,抽象類,接口

          6.1 繼承:

          6.1.1 繼承的語法:使用extends關鍵字表示繼承

          *子類繼承父類所有的屬性

          *私有方法不能被繼承

          *super關鍵字表示父類的引用,可以用super來調用父類的方法或屬性

          6.2.2 繼承中的構造方法:了解下面的知識點以及實例化對象時代碼的執行過程

          *子類的構造過程必須調用其基類的構造方法

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

          *如果調用super,必須寫在子類構造方法的第一行

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

          *如果子類的構造方法中沒有顯示的調用基類的構造方法,系統默認調用基類無參數的構造方法

          *如果子類構造方法中既沒有顯式的調用基類構造方法,基類中又沒有無參數的構造方法,編譯出錯

          6.3.3 對象的轉型

          *一個基類的引用類型變量可以指向其子類的對象

          *一個基類的引用不可以訪問其子類對象新增的成員

          *可以使用instanceof 關鍵字來判斷一個引用類型變量所指向的對象是否是制定的類型

          *子類的對象可以當作基類的對象來使用稱作向上轉型,反之稱為向下轉型

          *子類可以當成父類來使用,無需顯示轉換

          *父類引用轉換為子類引用要進行強制轉換

          *注意:不兼容的類型之間不能進行相互轉換(只有具有直接或間接父子關系的類才是兼容的類型),否則編譯時會報錯

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

          6.4.4 多態:也稱運行時綁定:一般是指父類的引用指向子類對象,通過父類的引用調用被子類重寫的方法,這個時候執行的是子類的方法

          *一句話總結多態:對象實際是什么類型就調用什么類型的方法

          *多態成立的條件:1,要有繼承。2,要有重寫。3,必須有父類引用指向子類對象。

          6.2 抽象類:用abstract修飾的類稱為抽象類(抽象的本意是不具體)

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

          2.抽象類不能被實例化。

          3.含有抽象方法的類必須被聲明為抽象類,

          4.子類繼承抽象類,必須被重寫父類的抽象方法,否則本身也必須被聲明為抽象類

          5.抽象類中的方法和屬性沒有其他規則來約束,抽象類中沒有抽象的方法是可以的,抽象類中可以有非抽象的方法和屬性

          6.3 static :靜態關鍵字

          6.3.1static屬性:在類中,用static申明的成員變量叫靜態變量,他為該類的公用變量,在第一使用時被初始化,對于該類的所有對象來說,static成員變量只有一份

          6.3.2 static方法:用static聲明的方法為靜態方法,在調用該方法時,不會將對象的引用傳遞給它,所以static方法中不可以訪問非static的成員。

          *靜態方法中不能訪問非靜態成員

          *靜態成員方法沒有this引用

          *可以通過類名(不需要實例化)或對象引用來訪問靜態成員

          6.4 final關鍵字:

          final表示最終的意思

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

          *final的成員變量

          *final的局部變量(形參)

          *final的方法不能夠被重寫

          *final的類不能夠被繼承

          6.5 接口:interface

          1. 使用interface定義一個接口,使用implements實現一個接口

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

          3. 接口中的方法只能為public abstract類型

          4. 一個類可以實現多個接口,但只能繼承一個類

          5. 接口也可以繼承接口

          7. 異常處理

          java的異常處理機制

          異常的關鍵字Exception

          try,catch,finally,throw,throws關鍵字

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

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

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

          *學會查看異常的信息:異常的名字,異常的信息,程序拋異常的位置

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

          7.2java的異常的分類

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

          *java里面的所有異常都是Throwable的子類

          *java虛擬機的異常是Error的子類,一般不需進行處理(因為沒法進行處理)

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

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

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

          7.3異常的處理方式

          *使用try,catch,finally進行處理

          *不處理,使用throws,throw交給別人來處理

          7.4try,catch,finally中程序的運行過程

          *嘗試執行try里面的語句

          *一次運行當中最多執行一個catch塊,如果沒有拋出異常,catch塊不執行

          *finally總會執行,不管有沒有拋出異常

          *如果try塊里面有return語句,finally也會執行

          7.5區分RuntimeException與被檢查異常

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

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

        【Java基礎知識點總結】相關文章:

        Java的基礎知識07-27

        Java基礎知識詳解12-07

        sun認證java基礎模擬試題03-30

        java基礎面試題201703-30

        NIIT認證Java基礎全真模擬試題03-08

        2017年經典的Java基礎面試題03-29

        基礎英語知識點大全11-30

        最全的小學語文基礎知識點總結03-29

        計算機基礎知識點總結03-29

        初中語文基礎知識點總結01-22

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>