所以我在做一些jUnit測試,並且想要編寫具有類似功能但是足夠小以便在單個類中寫入的不同類。無論設計決定如何,我都會遇到編譯器錯誤,我不確定我看到的規則是什麼。靜態內部類需要導入用於註釋
你能想象它會看起來像
package foo;
@RunWith(Suite.class)
@SuiteClasses({ TestClassOne.class, TestClassTwo.class })
public class TestSuite{
@RunWith(SpringJUnit4ClassRunner.class)
public static class TestClassOne{
}
@RunWith(SpringJUnit4ClassRunner.class)
public static class TestClassTwo{
}
}
現在,當編譯器踢它,它會說TestClassOne不能被解析爲一個類型。有一個簡單的方法來解決這個問題。例如,它需要顯式導入靜態類。
import foo.TestSuite.TestClassOne;
import foo.TestSuite.TestClassTwo;
我的問題是,任何人都可以解釋一下編譯器的規則或原因可能存在的註解無法看到類的靜態內部類。請記住,包私人課程看起來很好,並且無需導入即可編譯。
夠公平的,我可以引用它的類然後它的子類。我的反對更多的是因爲你可以在類中引用它的子靜態類而不用它自己的類名進行限定。我正在尋找你需要我看到的限定符 – 2011-01-26 14:30:20
的原因。在這個類中,就像你從類中導入了所有東西,包括內部類。 – maaartinus 2011-01-26 14:32:28