静态继承的问题
静态方法和变量也称为类变量和类方法,他们应该是跟这个类相关联的。为什么他们可以被继承?
------解决方案--------------------实力化的问题 
 静态的是大家都共享的
------解决方案--------------------我是初学者.继承只跟public private protected 有关吧.static 另外分配内存空间跟继承无关吧.如有错,望指点 
------解决方案--------------------在java中,类中的静态成员变量和静态方法相当于C,C++中的全局变量/函数。在java中,这些数据没有与具体某个类的任何对象关联。也就是说,即使没有创建对象,也需要一个能调用的方法。
------解决方案--------------------静态变量和类方法也是类属性的一部分 
 继承类当然需要把这些属性都继承过来   
 望指点,谢谢
------解决方案--------------------不能算是继承 
 只是可以不用类名.变量or方法来访问 
 直接用变量or方法
------解决方案--------------------class AA { 
 	static int i = 0;   
 	AA() { 
 		i++; 
 	}   
 	public static void show() { 
 		System.out.println( "AA.show()=  " + i); 
 	} 
 }   
 class SubAA extends AA { 
 	public static void show() { 
 		System.out.println( "SubAA.show()=  " + i); 
 	} 
 }   
 public class Test7 {   
 	/** 
 	 * @param args 
 	 */ 
 	public static void main(String[] args) { 
 		AA a1 = new AA(); 
 		AA.show(); 
 		SubAA sa1 = new SubAA(); 
 		SubAA.show(); 
 		SubAA sa2 = new SubAA(); 
 		SubAA.show();   
 	}   
 }   
 结果是: 
 AA.show()= 1 
 SubAA.show()= 2 
 SubAA.show()= 3   
 这就充分说明了static变量,只存在一个,继承了类,也只是用另一个引用来指向同一个地址内的东西。 
 它是在类加载时分配了空间,而不是在对象创建时分配空间的。所是只有一个地方存放它。 
 但可以用多个引用指向它。
------解决方案--------------------呵呵,只是访问,不会是新变量的
------解决方案--------------------事实上你继承后使用的静态变量还是父类中的那个静态变量,它们的值是一样的,因为它们在内存中使用的空间是相同的。
------解决方案--------------------$ zz╭ ╮╭ ﹌╮.       $ 
 $   z(o-.-o)(o-.-o) .      $ 
 $ ┏~﹊︸ ̄~﹊︸ ̄~┓      $ 
 $ IT者-IT开发者的网站--    $ 
 $ 10万篇技术资料--天天更新 $ 
 $ -----www.itzhe.cn-----   $
------解决方案--------------------静态和继承是两个概念! 
 静态是说所有的实例对象共享同一个实例,即不管你申明了多少个实例对象,其实在内存中都用了同一个实体。 
 而继承则对基类的修改和发展。如果和基类的某些申明相同的话,则覆盖基类的东西。 
 所以,静态和继承是从不同的角度在谈问题,是没有什么冲突的。如下例: 
 public class test { 
 	public static void main(String[] arg) { 
 		base.stMethod(); 
 		extend.stMethod(); 
 	} 
 	static class base { 
 		protected static int st1=11,st2=12; 
 		static void stMethod() {  
 			System.out.println( "In Base. st1= "+st1+ " st2= "+st2);} 
 	} 
 	static class extend extends base { 
 		protected static int st1=21; 
 		static void stMethod() {  
 			System.out.println( "In Extend. st1= "+st1+ " st2= "+st2); } 
 	} 
 } 
 base类和extend类都是静态类,extend类是base的派生类。它覆盖了base的静态方法stMethod和静态变量st1。在main中我们可以看到,通过base引用的stMethod方法由于使用的是base的东西,所以结果和变量值都是base的,而通过extend则使用派生的。运行结果如下: 
 In Base. st1=11 st2=12 
 In Extend. st1=21 st2=12
------解决方案--------------------简单问题复杂化了
------解决方案--------------------比如说,狗有四条腿 
 不管是黑狗,白狗,大狗,小狗,就连死狗都有四条腿,这就是他们共有的特性   
------解决方案--------------------比如说,狗有四条腿 
 不管是黑狗,白狗,大狗,小狗,就连死狗都有四条腿,这就是他们共有的特性       
 很形象哈。。