⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 j02080704.java

📁 经典java教材《java完美经典》一书中源码的完全收集
💻 JAVA
字号:
import java.lang.*;

class j02080704
{	 
	public static void main(String[] para)
  {	
  	B.BB1 BB1Obj =  new B.BB1(100);
  	BB1Obj.showAA1();
  	System.out.println("=========================");
  	B.BB1 BB2Obj =  B.getNewBB1Obj(199);
  	BB1Obj.showAA1();
  }
}

class A
{
	String theName = "A 类" ;
	static int testVar = 100;	
	public static class AA1
	{
		static String innerName = "AA1 类";
		
		public static void showAA1()
		{
			System.out.println(innerName);
		}		
		public void showOuter()
		{
			System.out.println(testVar); //可直接使用外围类 static 的成员
			//System.out.println(theName); //错误,不能直接使用外围类非 static 的成员
		}
	}
	
	public class AA2
	{
		//非 static 嵌套类不能有 static 成员
		String innerName = "AA2类";
		
		public void showAA2()
		{   
			System.out.println(innerName);
		}				
		public void showOuter()
		{
			System.out.println(testVar);  //可直接使用外围类的 static 成员
			System.out.println(theName); //可直接使用外围类的非 static 成员
		}
	}
}  //A类的结尾

class B extends A
{
	static class BB1 extends AA1
	{
		static String innerName = "AA2 类";
		
		public BB1(){}  //保留缺省构造子
		public BB1(int Var)
		{
			testVar = Var;  //设定 A.testVar 之值
		}
		public static void showAA1()
		{
			AA1.showAA1();
			System.out.println(innerName); //使用自己的 static 成员
			System.out.println("A.testVar = " + testVar);
			       //可直接使用外围类 B 之父类 A 的 static 成员,且可省略「A.」
			//System.out.println(theName); 	//错误,不能直接使用 A 的非 static 成员,需建立 A 对象		
		}
	}

	class BB2 extends AA2
	{     //也可以继承 static 的 AA1 类
		public void showAName()
		{
			theName = "A 类 -- New Name";
			System.out.println(theName); 
			  //可直接使用外围类 B 之父类 A 的非 static 成员,且可省略「A.」
		}
	}
	
	class CC extends BB1
	{   //非 static 嵌套类可继承 static 嵌套类
		
	}
		
	/*==错误,static 嵌套类不能继承非 static 嵌套类==
	static class DD extends BB 
	{
		
	}====================================================*/
	
	public static BB1 getNewBB1Obj(int Var)
	{
		BB1 obj = new BB1(Var);
		return obj;		
	}
}  //B类的结尾

class C extends A.AA1
{       //可继承 static 嵌套类
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -