2013-04-12 87 views
1

我有這樣是否有可能從其他軟件包訪問軟件包外的類?

package test{ 
    class Test{} 
} 
class TestInnerClass{} 

一類我可以從測試類訪問TestInnerClass但我需要訪問TestInnerClass(如類,而不是它的實例)從其他類也是如此。我並不想讓TestInnerClass成爲一個獨立的類,因爲它包含的只是一些變量。

是否有任何方式從外部測試類訪問類?

更具體地說,我需要訪問以下代碼才能工作。

registerClassAlias("TestInnerClass",TestInnerClass); 

回答

1

如果您有一個班級,否則將不會被訪問,除非公共班級內部,您可以將其定義爲內部。

內部類對當前包內的引用可見。

在您的示例中,TestInnerClass僅對Test可見。

否則,要訪問類或註冊類的別名,它必須在其自己的.as文件中定義爲public。

軟件包有助於對層次結構中的代碼進行排序和分類。通常情況下,我會繼續值對象或數據傳輸對象自己的包內,如:

com.jasonsturges.model.vo 

這有助於組小模型一起上課。

+0

啊,我明白了。感謝您的快速回復。只是想知道是否有任何方式訪問它,但我會爲它做一個公開課。 – Elonoa

1

如果你想讓它的類外可見是一個包含包類將被定義爲這樣:

// SampleCode.as file 
package samples{ 
public class SampleCode {} 
} 

// CodeFormatter.as file 
package samples{ 
class CodeFormatter {} 
} 

的SampleCode類是可見而CodeFormatter類不是。

希望我已經回答了您的問題

+0

感謝您的回答,似乎我需要爲該課程創建一個單獨的文件。 – Elonoa

相關問題