|
Hi, I have the following java class:
class Outer { private Integer a; private Long b; class Inner { public void foo() { System.out.println("a and b are " + a + " " + b); } } }
when I run javap on Outer and Outer$Inner, I get the following:
C:\test>...
Started by shrini1000 on
, 3 posts
by 3 people.
Answer Snippets (Read the full thread at stackoverflow):
If it wasn't final technically it could be modified after instantiation... .
This is implemented as a final reference to the outer class.
Non-static inner classes have an implicit reference to an instance of the outer class.
|
|
Can we create the object of inner class in the constructor of outer class?
Started by kitty ahuja on
, 4 posts
by 4 people.
Answer Snippets (Read the full thread at stackoverflow):
Public class Outer { public Outer() { Inner inner = new Inner(); } class Inner { } }
....
class Inner(){ //code } public class Outer(){ Inner foo; public Outer() { this.foo = new Inner(); } }
Sure.
|
|
I am befuddled why this is allowed
public class Foo { class Bar extends Foo { } }
Yet this is not allowed
public class Foo { class Bar extends Foo { } class Fooey extends Bar { } }
The compiler informed that it can not reference Fooey.this before supertype...
Started by sal on
, 4 posts
by 4 people.
Answer Snippets (Read the full thread at stackoverflow):
Tom Hawtin answer is correctI guess the JLS and the answers to this question are a starting point
Java inner class and static nested class....
An inner class extend its own outer class, or extend any inner class.
|
Ask your Facebook Friends
|
If I have an instance of an inner class, how can I access the outer class from code that is not in the inner class ? I know that within the inner class, I can use Outer.this to get the outer class, but I can't find any external way of getting this.
For...
Started by Kip on
, 7 posts
by 7 people.
Answer Snippets (Read the full thread at stackoverflow):
The bytecode of the Outer$Inner class will contain like when using ....
If you need to access the outer class through an instance of the inner the outer class, or through an interface.
There is no way, by design.
|
|
I have the following code. I want to get hold of the outer class object using which I created the inner class object inner . How can I do it?
public class OuterClass { public class InnerClass { private String name = "Peakit"; } public static void main...
Started by peakit on
, 5 posts
by 5 people.
Answer Snippets (Read the full thread at stackoverflow):
OuterClass.this references the outer class the fundamental concepts....
It looks like the field holding the reference to the outer class has package level access - at least or, rarely, to access preexisting names on legacy systems.
|
|
I have a situation like so...
class Outer(object): def some_method(self): # do something class Inner(object): def __init__(self): self.Outer.some_method() # <-- this is the line in question
How can I access the Outer class's method from the Inner class...
Started by T. Stone on
, 3 posts
by 3 people.
Answer Snippets (Read the full thread at stackoverflow):
For example....
Note that it is not necessarily the case that an instance of the outer class exists even when you have it will.
The methods of a nested class cannot directly access the instance attributes of the outer class.
|
|
I observed that Outer classes can access inner classes private instance variables. How is this possible? A sample code demonstrating the same is explained below::
class ABC{ class XYZ{ private int x=10; } public static void main(String... args){ ABC.XYZ...
Started by Harish on
, 6 posts
by 6 people.
Answer Snippets (Read the full thread at stackoverflow):
Even though it's in a separate class....
class is just a way to cleanly separate some functionality that really belongs to the original outer outer class would be most clear if it was implemented in a separate class.
|
|
Hi
I have the following class structure
public class Outer{ private Mapper a; .... private class MapperA implements Mapper { } private class MapperB implements Mapper { } }
In my Spring config file I would like to create a an Outer bean, and assign one...
Started by darren on
, 4 posts
by 4 people.
Answer Snippets (Read the full thread at stackoverflow):
Constructor-arg .../> :
<bean id="outer" class="mypackage.Outer"> <property name = "a"> <bean class = "mypackage.Outer.MapperA"> <constructor-arg ref = "outer" /> </bean>Normally you'd need ....
|
|
In the following snippet
public class a{ public void otherMethod(){} public void doStuff(String str, InnerClass b){} pubic void method(a){ doStuff("asd", new InnerClass(){ public void innerMethod(){ otherMethod(); } } ); } }
Ss there a keyword to refer...
Started by shsteimer on
, 4 posts
by 4 people.
Answer Snippets (Read the full thread at stackoverflow):
In general you use OuterClassName.this to refer to the enclosing instance of the outer class.
|
|
Consider the following Python (runs in 2.x or 3.x):
class Outer(object): pass class Inner(object): def __init__(self): print("Inner.self", self) o = Outer() i = o.Inner()
I want to get my hands on o while inside Inner.__init__() . But:
I don't want o ...
Started by Larry Hastings on
, 6 posts
by 6 people.
Answer Snippets (Read the full thread at stackoverflow):
But with a bit of redesign:
class Outer(object): pass class _Inner = Outer....
Can't be done.
You can make Inner a class attribute of Outer if you insist, but it will have no special access to Outer .
Need it.
|