// 1. The internal class can directly access the member variables of the external class, including the private member variables of the external class. // 2. The external class must access the member variables of the internal class, object class Outer {int x = 110; Public void show () {system. out. println ("external Class X =" + x);} public void showinner () {inner = new inner (); inner. show (); system. out. println (inner. x);} class inner {// internal class int x = 220; Public void show () {system. out. println ("internal class X =" + x) ;}} public class outerdemo {public static void main (string [] ARGs) {outer = new outer (); outer. show (); outer. showinner (); outer. inner outerinner = new outer (). new inner (); // special case. the external class directly accesses the internal class member variable outerinner. show ();}}