day11(eclispe,Debug,Object)

一.常見開發工具

1.eclispe插件安裝
將插件解壓後放到dropins目錄即可。

2.Hierarchy 顯示Java繼承層次結構,選中類後F4

3.程序的編譯和運行的環境配置
  window – Preferences – Java
  編譯環境:Compiler 默認選中的就是最高版本。
  運行環境:Installed JREs 默認會找你安裝的那個JDK。建議配置了Java的環境變量。
  問題:
    低編譯,高運行。可以。
    高編譯,低運行。不可以。
    建議,編譯和運行的版本一致。

4.去掉默認註釋
window – Preferences – Java – Code Style – Code Templates

5.字體大小及顏色

  • a:Java代碼區域的字體大小和顏色:

    * window -- Preferences -- General -- Appearance -- Colors And Fonts --Java修改 -- Java Edit Text Font
    
  • b:控制檯

    * window -- Preferences -- General -- Appearance -- Colors And Fonts -- Debug -- Console font
    
  • c:其他文件

    * window -- Preferences -- General -- Appearance -- Colors And Fonts -- Basic -- Text Font
    

6.窗體給弄亂了,怎麼辦?

  • window – Reset Perspective
  • 還可以自己創建還原點

7.取消懸浮提示

  • window – Preferences – Java–Editor–Hovers。右邊將Combined Hover勾去掉。
  • F2查看提示

8.內容輔助鍵

  • a.Alt+/ 起提示作用
  • b.main+alt+/,syso+alt+/,給出其他提示
  • c.補充輸出語句,選中需要輸出的部分,alt+/選擇最後一項即可
  • d.定義自己的alt + /
    windows–perference-Java-Editor-Templates–New

9.Eclipse中快捷鍵的使用
* A:新建 ctrl + n
* B:格式化 ctrl+shift+f
* C:導入包 ctrl+shift+o
* D:註釋 ctrl+/,ctrl+shift+/(多行註釋),ctrl+shift+\(取消多行註釋)
* E:代碼上下移動 選中代碼alt+上/下箭頭
* F:查看源碼 選中類名(F3或者Ctrl+鼠標點擊)
* G:查找具體的類 ctrl + shift + t
* H:查找具體類的具體方法 ctrl + o
* I:給建議 ctrl+1,根據右邊生成左邊的數據類型,生成方法
* J:刪除代碼 ctrl + d
* K:抽取方法alt + shift + m
* L:改名alt + shift + r (f2)

10.提高開發效率
  alt + shift + s
    A:自動生成構造方法
    B:自動生成get/set方法

11.生成jar包並導入到項目中
a.jar是什麼?(一種可運行,一個不可運行)
  jar是多個class文件的壓縮包。
  可運行:java -jar stu.jar
b.jar有什麼用?
  用別人寫好的東西
c.生成jar包
  選中項目–右鍵–Export–Java–Jar–自己指定一個路徑和一個名稱–Finish
d.導入jar包
  複製到項目路徑下並添加至構建路徑。

二.調試(Debug)

1.Debug的作用
  調試程序
  查看程序執行流程
2.查看程序執行流程

  • 什麼是斷點:

    * 就是一個標記,從哪裏開始。
    
  • 如何設置斷點:

    * 你想看哪裏的程序,你就在那個有效程序的左邊雙擊即可。
    
  • 在哪裏設置斷點:

    * 哪裏不會點哪裏。
    * 目前:我們就在每個方法的第一條有效語句上都加。
    
  • 如何運行設置斷點後的程序:

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

    * Debug:斷點測試的地方
        * 在這個地方,記住F6,或者點擊也可以。一次看一行的執行過程。
    * Variables:查看程序的變量變化
    * ForDemo:被查看的源文件
    * Console:控制檯
    

三.Object

http://www.importnew.com/20381.html

http://blog.csdn.net/SEU_Calvin/article/details/52094115?locationNum=5&fps=1

1.hashCode()方法
  public int hashCode()

  • a:返回該對象的哈希碼值。默認情況下,該方法會根據對象的地址來計算。

  • b:不同對象的,hashCode()一般來說不會相同。但是,同一個對象的hashCode()值肯定相同。

2.Object類的equals()方法

  • a.指示其他某個對象是否與此對象“相等”。
  • b.默認情況下比較的是對象的引用是否相同。
  • c.由於比較對象的引用沒有意義,一般建議重寫該方法。
public class Set_Test {
    public static void main(String[] args) {
        HashSet<Student> stus = new HashSet<>();
        Student stu1 = new Student("1433140338","zdx",21);
        Student stu2 = new Student("1433140326","xsq",22);
        Student stu3 = new Student("1433140326","wbl",22);
        stus.add(stu1);
        stus.add(stu2);
        stus.add(stu3);
        Iterator<Student> s = stus.iterator();
        while(s.hasNext()){
            System.out.println(s.next().toString());
        }
    }
}   
class Student{
    private String Sno;
    private String name;
    private int age;
    public Student() {
        super();
    }
    public Student(String sno, String name, int age) {
        super();
        Sno = sno;
        this.name = name;
        this.age = age;
    }
    @Override
    public boolean equals(Object obj) {
        if(obj instanceof Student){
            Student stu = (Student)obj;
            return this.Sno == stu.Sno;
        }else{
            return false;
        }
    }
    @Override
    public int hashCode() {
        return Sno.hashCode();
    }
    @Override
    public String toString() {
        return "Student [Sno=" + Sno + ", name=" + name + ", age=" + age + "]";
    }
}

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

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

4.Object類的getClass()方法
 public final Class getClass()

  • a:返回此 Object 的運行時類。
  • b:可以通過Class類中的一個方法,獲取對象的真實類的全名稱。 * public String getName()

5.toString()方法
 public String toString()

  • a:返回該對象的字符串表示。
  • b:它的值等於: getClass().getName() + “@” +
    Integer.toHexString(hashCode())
  • c:由於默認情況下的數據對我們來說沒有意義,一般建議重寫該方法。
發佈了36 篇原創文章 · 獲贊 5 · 訪問量 6250
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章