修改
parent.myValue++;
System.out.println(parent.myValue);
parent.printValue();
((Child)parent).myValue++;
System.out.println(child.myValue);
parent.printValue();
输出结果为
101
201
所以可以看出parent.myValue++;是对parent的myValue进行加1 而前边已经将子类赋值给父类,所以执行输出的时候输出的是child的myValue的值。
所以第四部分结果应该是200
最后一部分将parent转化为child类型之后对myValue 的值修改是改的Child的myValue的值,最后输出的同样是child的值,所以结果为201