W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
提取超類重構(gòu)有兩個(gè)選項(xiàng):
原始類中的字段和方法可以移動(dòng)到超類。同樣,對(duì)于一個(gè)方法,你只能傳遞方法聲明,而不是在超類中將方法聲明為抽象的實(shí)現(xiàn)。因此,您將擁有超類和從超類繼承的原始類。
// File Class.java
public class Class {
public int varInt;
private double varDouble;
public static final int CONSTANT = 0;
public void publicMethod() {
...
}
public void hiddenMethod() {
...
}
public void setVarDouble(double var) {
this.varDouble = var;
}
public double getVarDouble() {
return
varDouble;
}
}
// File Class.java
public class Class extends SuperClass {
Int;
blicMethod() {
ddenMethod() {
lass.java
ass SuperClass {
varDouble;
final int CONSTANT = 0;
t void publicMethod();
tVarDouble(double var) {
uble = var;
getVarDouble() {
Double;
要重命名原始類并使其成為新創(chuàng)建的超類的實(shí)現(xiàn),請(qǐng)選擇 "重命名原始類",并在可能的情況下使用超類, 并指定原始類的新名稱。IntelliJ IDEA 會(huì)將所有原始的類用法改為實(shí)現(xiàn)類的用法,只有在它仍然是必要的時(shí)候。
若要在當(dāng)前類中保留方法實(shí)現(xiàn),并在提取的超類別中聲明它為抽象,請(qǐng)選中 "使抽象" 復(fù)選框。
如果該類在當(dāng)前項(xiàng)目中使用,則 IntelliJ IDEA 建議將該類的實(shí)例替換為新的超類的實(shí)例。如果一個(gè)類實(shí)例引用一個(gè)未在超類??中定義的成員,將不會(huì)被建議替換。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: