[英]Return an instance of an inner class from a static method in Java
以下是我無法更改的用戶要求:
具有靜態接口的類(所有方法都是靜態的)。
一個特定方法返回ArrayList<String>
對象和File
對象。
以下是我對上述要求的實施:
一個內部類,包含ArrayList<String>
對象和File
對象。
特定方法初始化內部類的實例並在結尾返回它。
但是我無法在不創建外部類的實例的情況下創建內部類的實例:
public class Outer
{
public class Inner
{
ArrayList<String> strings;
File file;
}
public static Inner method()
{
Inner inner = new Outer().new Inner();
...
return inner;
}
}
除了“丑陋”之外, new Outer().new Inner()
感覺非常不正確。
我可以采取不同的方法來避免必須實例化外部類嗎?
如果你使內部類是靜態的(也就是你編寫public static class Inner
)那么你不需要外部類的實例; 你可以寫new Outer.Inner()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.