Skip to content

Commit

Permalink
Added InnerClasses
Browse files Browse the repository at this point in the history
  • Loading branch information
NMKrastev committed Jul 8, 2022
1 parent b328fd8 commit d402e87
Show file tree
Hide file tree
Showing 8 changed files with 47 additions and 1 deletion.
1 change: 1 addition & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion 54-AnonymousObjects/54-AnonymousObjects.iml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager">
<output url="file://$MODULE_DIR$/out/production/" />
<output url="file://$MODULE_DIR$/out/production" />
<output-test url="file://$MODULE_DIR$/../out/test/54-AnonymousObjects" />
<exclude-output />
<content url="file://$MODULE_DIR$">
Expand Down
13 changes: 13 additions & 0 deletions 55-InnerClasses/55-InnerClasses.iml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager">
<output url="file://$MODULE_DIR$/out/production/" />
<output-test url="file://$MODULE_DIR$/../out/test/55-InnerClasses" />
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
Binary file added 55-InnerClasses/out/production/Main.class
Binary file not shown.
Binary file not shown.
Binary file added 55-InnerClasses/out/production/Outside.class
Binary file not shown.
19 changes: 19 additions & 0 deletions 55-InnerClasses/src/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
public class Main {
public static void main(String[] args) {

/*inner class - A class inside another class.
Useful if a class should be limited in scope.
Usually private, but not necessary.
Helps group classes that belong together.
Extremely useful for listeners for specific events.
Precursor for anonymous inner classes
*/

Outside out = new Outside();
Outside.Inside inside = out.new Inside();

System.out.println(out.x + inside.y);

inside.greeting();
}
}
13 changes: 13 additions & 0 deletions 55-InnerClasses/src/Outside.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
public class Outside {

String x = "Hello ";

public class Inside {

String y = "World";

public void greeting() {
System.out.println(x + y);
}
}
}

0 comments on commit d402e87

Please sign in to comment.