diff options
Diffstat (limited to 'oop/10-nested-classes')
| -rw-r--r-- | oop/10-nested-classes/.gitignore | 1 | ||||
| -rw-r--r-- | oop/10-nested-classes/CreateInner.java | 16 | ||||
| -rw-r--r-- | oop/10-nested-classes/MyOuter.java | 14 |
3 files changed, 31 insertions, 0 deletions
diff --git a/oop/10-nested-classes/.gitignore b/oop/10-nested-classes/.gitignore new file mode 100644 index 0000000..6b468b6 --- /dev/null +++ b/oop/10-nested-classes/.gitignore @@ -0,0 +1 @@ +*.class diff --git a/oop/10-nested-classes/CreateInner.java b/oop/10-nested-classes/CreateInner.java new file mode 100644 index 0000000..ab3830e --- /dev/null +++ b/oop/10-nested-classes/CreateInner.java @@ -0,0 +1,16 @@ +public class CreateInner { + + public static void main(String[] args) { + MyOuter mo = new MyOuter(); + MyOuter.MyInner inner = mo.new MyInner(); + inner.seeOuter(); + } + + /* Here's another way (same thing!) + public static void main(String[] args) { + MyOuter.MyInner inner = new MyOuter().new MyInner(); + inner.seeOuter(); + } + */ + +} diff --git a/oop/10-nested-classes/MyOuter.java b/oop/10-nested-classes/MyOuter.java new file mode 100644 index 0000000..6821b98 --- /dev/null +++ b/oop/10-nested-classes/MyOuter.java @@ -0,0 +1,14 @@ +class MyOuter { + private int x = 7; + + public void makeInner() { + MyInner in = new MyInner(); + in.seeOuter(); + } + + class MyInner { + public void seeOuter() { + System.out.println("Outer x is " + x); + } + } +}
\ No newline at end of file |
