java多态中向上转化类型不能调用子类的变量

java多态中向上转化类型之后,虽然说可以调用子类和父类的方法,但是不能调用子类中的变量。会显示没有变量。

代码如下,其他三个类没有显示出来。

package test;
import java.util.Scanner;
public class Demo {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		Shape q = new Rectangle();
		Shape w = new Circle();
		Rectangle e = new Rectangle();
		System.out.println("请输入长");
		q.chang = in.nextInt();//——————————-此处出错
		System.out.println("请输入宽");
		e.kuan = in.nextInt();
		q.mm();
		q.xx();
	}
}


你可能感兴趣的:(java基本小知识)