我的代码存在问题,我需要使用超类对象调用子类方法。有没有可能的方法来做这个或解决?我完全难过,对我的问题没有任何有用的答案。
String basicCommand = commands[0];
String advCommand = commands[1];
String perCommand = commands[2];
if (objectName.get(advCommand)instanceof Circle){
objectName.get(advCommand);
//.changeSize(reader.convertToInt(perCommand));
advcommand
属于Shape
类型,是类Circle
的超类,方法changesize()
位于Circle
内。
*数据在散列图中。
答案 0 :(得分:0)
您需要根据类名实例化它:
Class cc = Class.forName(advCommand);
Circle c = (Circle)c.newInstance();
c.changeSize(reader.convertToInt(perCommand));