public class A {
public int a =0;
public void pa()
{
System.out.println(a);
}}public class B extends A{
public void pa()
{
System.out.println(a);
a++;
super.pa();}}public class TestProblem {
public static void main(String[] args) {
new B().pa();
}
子类变化会影响父类?高人详细指点啊
public int a =0;
public void pa()
{
System.out.println(a);
}}public class B extends A{
public void pa()
{
System.out.println(a);
a++;
super.pa();}}public class TestProblem {
public static void main(String[] args) {
new B().pa();
}
子类变化会影响父类?高人详细指点啊
比如说:
声明父类,占用AB的内存空间。声明子类,不仅要占用AB(父类)的内存空间,还要占用CDE的内存扩展空间。(ABCDE合起来才是一个完整的子类,如果改变了父类的属性,其实就是对AB空间的操作)
单独的new 父类,空间可能在AB中,
单独new 子类,空间在JKXYZ中,其中JK是存放父类的,XYZ是存放子类的。
就是所,new的时候,会单独的开辟一块空闲的,没有被占用的内存。第一次new 父类,开辟一个空间。
第二次new 子类,开辟另一个空间。
两个空间没有任何的重叠....
记住new的对象1与new 的对象2是完全不相关的。
就像卡车和小汽车,都有发动机,但是发动机不一样。