Posted on 2009-08-13 23:32
小強摩羯座 閱讀(1051)
評論(0) 編輯 收藏 所屬分類:
Java
Eclipse下的重構:
什么是重構
重構是指在保持程序的全部功能的基礎上改變程序結構的過程。重構的類型有很多,如更改類名,改變方法名,或者提取代碼到方法中。每一次重構,都要執行一系列的步驟,這些步驟要保證代碼和原代碼相一致。
重構的理由:為整理,為擴展,為優雅。
在Eclipse下的重構:
重構會關聯多個文件,在一次重構時,不可再修改并保存文件,重構無法撤銷或重做。
Eclipse中的重構類型
如果你看一下Eclipse的重構菜單,可以看到四部分。第一部分是撤銷和重做。其他的三部分包含Eclipse提供的三種類型的重構。
第一種類型的重構改變代碼的物理結構,像Rename和Move。第二種是在類層次上改變代碼結構,例如Pull Up和Push Down。第三種是改變類內部的代碼,像Extract Method和Encapsulate Field。這三部分的重構列表如下。
類型1 物理結構
l Rename
l Move
l Change Method signature
l Convert Anonymous Class to Nested
l Convert Member Type to New File:內部類提出一個單獨類。
類型2 類層次結構
l Push Down:將父類中方法或成員移到子類。
l Push Up
l Extract Interface
l Generalize Type (Eclipse 3)
l User Supertype Where Possible
類型3 類內部結構
l Inline
l Extract Method
l Extract Local Variable
l Extract Constant
l Introduce Parameter:引進參數替換local var
l Introduce Factory
l Encapsulate Field
表從Eclipse幫助中提取,列出了各種重構支持的Java資源類型,對應的快捷鍵。
名字
|
可應用的Java元素
|
快捷鍵
|
Undo
|
在一次重構后可執行
|
Alt + Shift + Z
|
Redo
|
在一次撤銷重構后可執行
|
Alt + Shift + Y
|
Rename
|
對方法,成員變量,局部變量,方法參數,對象,類,包,源代碼目錄,工程可用。
|
Alt + Shift + R
|
Move
|
對方法,成員變量,局部變量,方法參數,對象,類,包,源代碼目錄,工程可用。
|
Alt + Shift + V
|
Change Method Signature
|
對方法可用。
|
Alt + Shift + C
|
Convert Anonymous Class to Nested
|
對匿名內部類可用。
|
|
Move Member Type to New File
|
對嵌套類可用。
|
|
Push Down
|
對同一個類中成員變量和方法可用。
|
|
Pull Up
|
對同一個類中成員變量和方法,嵌套類可用。
|
|
Extract Interface
|
對類可用。
|
|
Generalize Type
|
對對象的聲明可用。
|
|
Use Supertype Where Possible
|
對類可用。
|
|
Inline
|
對方法,靜態final類,局部變量可用。
|
Alt + Shift + I
|
Extract Method
|
對方法中的一段代碼可用。
|
Alt + Shift + M
|
Extract Local Variable
|
對選中的與局部變量相關的代碼可用。
|
Alt + Shift + L
|
Extract Constant
|
對靜態final類變量,選中的與靜態final類變量相關的代碼可用。
|
|
Introduce Parameter
|
對方法中對成員變量和局部變量的引用可用。
|
|
Introduce Factory
|
對構造方法可用。
|
|
Convert Local Variable to Field
|
對局部變量可用。
|
Alt + Shift +
|