簡體   English   中英

是否可以在同一包中有兩個具有相同名稱的類?

[英]Is it possible to have 2 classes with the same name and in the same package?

我正在開發grails應用程序,並且需要修改插件中的groovy類,因此我決定覆蓋該類,因此我的插件中包含以下方法和類:

def example = new a();
a.method();

class a {
   void method() {
      println "2";
   }
}

所有這些都在插件內部,所以我想在項目的同一包中創建另一個類,以更改方法,但是如何設置新類來代替插件運行呢? 還是不可能?

class a {
   void method() {
      println "4";
   }
}

是的你可以。 這稱為類陰影。 但是我大多數時候都會反對。 您只需要讓jvm在插件類之前加載您的類。

是的,您只需要確保您的類在插件版本之前位於類路徑中即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM