假设我有一个内部类 B,我将在外部类的一个成员函数内部创建一个实例,有没有一种方法可以在不创建外部类实例的情况下实现?
非常感谢。
class A {
class B {
}
public void function() {
// create an instance of B, normally have to create a
// instance of A to be bond to by b
B b = new B();
}
}
最佳答案
唯一的方法是声明 B
static
:
class A {
static class B {
这意味着 B
没有与之关联的 A
实例,并且可以在没有可用外部实例的上下文中实例化。
也就是说,您当前的代码可以按原样编译(因为 function()
是非static
,所以是的一个实例A
在此上下文中可用)。
关于java - 仅在成员函数内创建嵌套内部类的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15964111/