问题的引出
只怪自己Java语法学的不精,突然产生一个问题:因为一想到变量就是简单的几个符号,需要继承吗?Java中到底能不能继承父类的变量?
答:子类是可以继承父类的变量的,但是静态变量和一般变量有所区别。
静态变量和一般变量的区别
静态变量和一般变量都能继承于父类,但是静态变量在子类中使用set方法修改,父类也会被相同地修改;一般变量在子类中用set方法修改则不会对父类有影响。
代码演示
public class ExtendStaticTest {
static int i = 2;
int j =4;
public void print(){
System.out.println("Static变量i的测试值为:"+i+" "+"普通变量j的值为:"+j);
}
}
class ChildClass extends ExtendStaticTest{
public void set(int shuru1,int shuru2 ){
i=shuru1;
j=shuru2;
}
public static void main(String[] args) {
ChildClass cs = new ChildClass();
ExtendStaticTest est = new ExtendStaticTest();
cs.print();
System.out.println("****************分隔符*******************");
est.print();
cs.set(8,16);
cs.print();
System.out.println("****************分隔符*******************");
est.print();
}
}