
can we redeclare static variable in the inherited class like this:
public class StaticClass1 {
class StaticClass1{
static int noOfInstances;
StaticClass1(){
noOfInstances++;
}
}
class StaticClass extends StaticClass1
{ public static void main(String[] args){
StaticClass1 sv1 = new StaticClass1();
System.out.println("No. of instances for sv1 : " + sv1.noOfInstances);
StaticClass1 sv2 = new StaticClass1();
System.out.println("No. of instances for sv1 : " + sv1.noOfInstances);
System.out.println("No. of instances for st2 : " + sv2.noOfInstances);
StaticClass1 sv3 = new StaticClass1();
System.out.println("No. of instances for sv1 : " + sv1.noOfInstances);
System.out.println("No. of instances for sv2 : " + sv2.noOfInstances);
System.out.println("No. of instances for sv3 : " + sv3.noOfInstances);
**//here i have redeclared the static variable as "25" is it possible,then what is static variable**
noOfInstances=25;
StaticClass1 sv4 = new StaticClass1();
System.out.println("No. of instances for sv1 : " + sv1.noOfInstances);
System.out.println("No. of instances for sv2 : " + sv2.noOfInstances);
System.out.println("No. of instances for sv3 : " + sv3.noOfInstances);
System.out.println("No. of instances for sv4 : " + sv4.noOfInstances);
StaticClass1 sv5 = new StaticClass1();
System.out.println("No. of instances for sv1 : " + sv1.noOfInstances);
System.out.println("No. of instances for sv2 : " + sv2.noOfInstances);
System.out.println("No. of instances for sv3 : " + sv3.noOfInstances);
System.out.println("No. of instances for sv3 : " + sv4.noOfInstances);
System.out.println("No. of instances for sv3 : " + sv5.noOfInstances);
}
}
//}
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.