Java基礎11---eclipse和API

冬有雪發表於2016-06-12

一、eclipse

1.介紹

      一個整合開發環境 IDE(Integrated Development Environment),免費,純Java語言編寫,免安裝, 擴充套件性強。
官網下載 http://eclipse.org/,推薦使用eclipse3.7.2,更高階的版本相容性不好。

2.外掛

只要將外掛解壓後放到dropins目錄即可完成安裝。

3.語法檢查

  • 紅色波浪線,嚴重警告,必須處理,否則編譯通不過
  • 黃色波浪線 ,普通警告,可以不用管它

4.視窗和檢視

  • 視窗 每一個基本的窗體被稱為視窗
    • PackageExplorer 顯示專案結構,包,類,及資源
    • Outline 顯示類的結構,方便查詢,識別,修改
    • Console 程式執行的結果在該視窗顯示
    • Hierarchy 顯示Java繼承層次結構,選中類後F4
  • 檢視 是由某些視窗的組合而成的
    • Java檢視
    • Debug檢視

5.程式的編譯和執行的環境配置(一般不改)

  • window – Preferences – Java
    • 編譯環境:Compiler 預設選中的就是最高版本。
    • 執行環境:Installed JREs 預設會找你安裝的那個JDK。建議配置了Java的環境變數。
    • 問題:
      • 低編譯,高執行。可以。
      • 高編譯,低執行。不可以。
      • 建議,編譯和執行的版本一致。
  • 如何去掉預設註釋?
    • window – Preferences – Java – Code Style – Code Templates
    • 選擇你不想要的內容,通過右邊Edit編輯。
    • 注意:請只刪除註釋部分,不是註釋部分的不要刪除。
  • 行號的顯示和隱藏
    • 顯示:在程式碼區域的最左邊的空白區域,右鍵 – Show Line Numbers即可。
    • 隱藏:把上面的動作再做一次。
  • 字型大小及顏色
    • Java程式碼區域的字型大小和顏色:
      • window – Preferences – General – Appearance – Colors And Fonts –Java修改 – Java Edit Text Font
    • 控制檯
      • window – Preferences – General – Appearance – Colors And Fonts – Debug – Console font
    • 其他檔案
      • window – Preferences – General – Appearance – Colors And Fonts – Basic – Text Font
  • 窗體給弄亂了,怎麼辦?
    • window – Reset Perspective
  • 控制檯找不到了,怎麼辦?
    • Window–Show View—Console
  • 取消懸浮提示
    • window – Preferences – Java–Editor–Hovers。右邊將Combined Hover勾去掉。
    • 這樣程式碼的懸浮框就不會自動出現了。如果想看提示,將游標懸浮在程式碼上,按F2即可。

6.Eclipse中內容輔助鍵的使用

  • Alt+/ 起提示作用
  • main+alt+/,syso+alt+/,給出其他提示
  • 補充輸出語句,選中需要輸出的部分,alt+/選擇最後一項即可
  • 定義自己的alt + /
  • windows–perference-Java-Editor-Templates–New
  • 新建 ctrl + n
  • 格式化 ctrl+shift+f
  • 匯入包 ctrl+shift+o
  • 註釋 ctrl+/,ctrl+shift+/,ctrl+shift+\
  • 程式碼上下移動 選中程式碼alt+上/下箭頭
  • 檢視原始碼 選中類名(F3或者Ctrl+滑鼠點選)
  • 查詢具體的類 ctrl + shift + t
  • 查詢具體類的具體方法 ctrl + o
  • 給建議 ctrl+1,根據右邊生成左邊的資料型別,生成方法
  • 刪除程式碼 ctrl + d
  • 抽取方法alt + shift + m
  • 改名alt + shift + r
  • ctrl alt + 下鍵 向下複製一行
  • ctrl alt + 上鍵 向上複製一行
  • alt + shift + s
    • 自動生成構造方法
    • 自動生成get/set方法
package com.geekds.bean;

public class Student {
    private String girlfriend;
    private int sum;
    //下面註釋中的可以直接用alt+shift+s 然後選擇相應的構造方法和set、get方法
    /*
    public Student(String girlfriend, int sum) {
        super();
        this.girlfriends = girlfriend;
        this.sum = sum;
    }
    public Student() {
        super();
        // TODO Auto-generated constructor stub
    }
    public String getGirlfriends() {
        return girlfriend;
    }

    public void setGirlfriends(String girlfriends) {
        this.girlfriend = girlfriend;
    }
    public int getSum() {
        return sum;
    }
    public void setSum(int sum) {
        this.sum = sum;
*/
}
package com.geekds.eclipse;

import com.geekds.bean.Student;

public class Teacher {
//輸入main然後alt + / 即可弄出來完整的main方法
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //輸入student然後alt + / 即可匯入包和import com.geekds.bean.Student;
        Student s = new Student("dong",5);
        System.out.println(s.getGirlfriends() + " : " + s.getSum());
        System.out.println(s.getGirlfriends());
    }

}

7.Eclipse中如何生成jar包並匯入到專案中

       jar是多個class檔案的壓縮包。匯入後可以直接用別人寫好的東西

  • 打jar包
    • 選中專案–右鍵–Export–Java–Jar–自己指定一個路徑和一個名稱–Finish
  • 匯入jar包
    • 複製到專案路徑下並新增至構建路徑。

8.Eclipse中如何刪除專案和匯入專案

  • 刪除專案
    • 選中專案 – 右鍵 – 刪除
      • 從專案區域中刪除
      • 從硬碟上刪除
  • 匯入專案
    • 在專案區域右鍵找到import
    • 找到General,展開,並找到
    • Existing Projects into Workspace
    • 點選next,然後選擇你要匯入的專案
    • 注意:這裡選擇的是專案名稱

9.斷點除錯的基本使用

  • Debug的作用

    • 除錯程式
    • 檢視程式執行流程
  • 如何設定斷點:

    • 你想看哪裡的程式,你就在那個有效程式的左邊雙擊即可。
  • 在哪裡設定斷點:我們就在每個方法的第一條有效語句上都加。

  • 如何執行設定斷點後的程式:

    • 右鍵 – Debug as – Java Application
  • 看哪些地方:

    • Debug:斷點測試的地方
      • 在這個地方,記住F6,或者點選也可以。一次看一行的執行過程。
    • Variables:檢視程式的變數變化
    • ForDemo:被檢視的原始檔
    • Console:控制檯
  • 如何去斷點:

    • 再次雙擊即可
    • 找到Debug檢視,Variables介面,找到Breakpoints,並點選,然後看到所有的斷點,最後點選那個雙叉。

可以用eclipse檢視java中引數傳遞。

二、API概述

  • API(Application Programming Interface)
    • 應用程式程式設計介面
  • Java API
    • 就是Java提供給我們使用的類,這些類將底層的實現封裝了起來,
    • 我們不需要關心這些類是如何實現的,只需要學習這些類如何使用。

1.Object類概述

  • 類層次結構的根類
  • 所有類都直接或者間接的繼承自該類

1)Object類的hashCode()方法

  • 案例演示
    • public int hashCode()
    • 返回該物件的雜湊碼值。預設情況下,該方法會根據物件的地址來計算。
    • 不同物件的,hashCode()一般來說不會相同。但是,同一個物件的hashCode()值肯定相同。
package com.geekds.object;

import com.geekds.bean.Student;

public class HashCodeTest {
    public static void main(String[] args) {
        Object obj = new Object();
        int hashCode = obj.hashCode();
        System.out.println(hashCode);

        Student s1 = new Student("dong",234);
        Student s2 = new Student("shuai",234);

        System.out.println(s1.hashCode());
        System.out.println(s2.hashCode());
    }
}

2)Object類的getClass()方法

  • 案例演示
    • public final Class getClass()
    • 返回此 Object 的執行時類。
    • 可以通過Class類中的一個方法,獲取物件的真實類的全名稱。
      • public String getName()
package com.geekds.object;

import com.geekds.bean.Student;

public class GetClassTest {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Student s = new Student("dongshuai",24);
        Class clazz = s.getClass(); //獲取該物件的位元組碼檔案

        System.out.println(clazz.getName());
    }

}

3.Object類的toString()方法

  • 案例演示
    • public String toString()
    • a:返回該物件的字串表示。
public Stirng toString() {
            return name + "," + age;
        }
  • 它的值等於:
    • getClass().getName() + “@” + Integer.toHexString(hashCode())
  • 由於預設情況下的資料對我們來說沒有意義,一般建議重寫該方法。
package com.geekds.object;

import com.geekds.bean.Student;

public class ToStringTest {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Student s = new Student("dongshuai",18);
//      String str = s.toString();
        System.out.println(s.toString());
        System.out.println(s);  //如果直接列印物件的引用,會預設呼叫toString方法
    }

    /*public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }*/
}

4)Object類的equals()方法

  • 案例演示
    • 指示其他某個物件是否與此物件“相等”。
    • 預設情況下比較的是物件的引用是否相同。
    • 由於比較物件的引用沒有意義,一般建議重寫該方法。
package com.geekds.object;

import com.geekds.bean.Student;

public class EqualsTest {
    public static void main(String[] args) {
        Student s1 = new Student("ds",23);
        Student s2 = new Student("ds",23);

        System.out.println(s1.equals(s2));
        System.out.println(s1 == s2);

    }

    public boolean equals(Object obj) {
        return (this == obj);
    }
}

5.==號和equals方法的區別

  • ==是一個比較運算子號,既可以比較基本資料型別,也可以比較引用資料型別,基本資料型別比較的是值,引用資料型別比較的是地址值
  • equals方法是一個方法,只能比較引用資料型別,所有的物件都會繼承Object類中的方法,如果沒有重寫Object類中的equals方法,equals方法和==號比較引用資料型別無區別,重寫後的equals方法比較的是物件中的屬性.

相關文章