Object x = itr.getInstance();
AbstractGuiTest currentCase = (AbstractGuiTest)x;
WebDriver driver = currentCase.getDriver();
AbstractGuiTest是一个类。
有人可以解释如何在类似对象旁边的括号内使用类的语法吗?
需要了解更多可以以这种方式使用类的示例。
更新
itr的类型为ITestResult
答案 0 :(得分:1)
那就是将Object
类型的对象x转换为AbstractGuiTest
由于继承,这在Java中经常发生。
因此,在您的情况下,AbstractGuiTest
是Object
类的子类,换句话说,继承自Object
。因此,通过使用此AbstractGuiTest currentCase = (AbstractGuiTest)x;
,您正在x
类型AbstractGuiTest
。
如果您对不在同一类层次结构中的类使用此类型转换,您将获得ClassCastException
另一个例子可能是: Animal是superClass,Dog是它的子类
public class Animal{
//some code goes in here
}
public class Dog extends Animal{
//some code goes in here
}
现在,您可以使用以下语法:
Animal a = new Dog();
Dog d = (Dog) a;
你应该阅读更多有关java继承的内容,以明确这个概念。