【发布时间】:2018-09-21 11:37:19
【问题描述】:
我们可以通过以下方式创建驱动对象。
WebDriver driver = new FirefoxDriver();
FirefoxDriver driver = new FirefoxDriver();
FirefoxDriver 是一个实现 WebDriver 接口的类。
在第一个语句中我们使用接口名称,在第二个语句中我们使用类名。两者之间有什么区别,比如我们无法访问某些方法等?
我在stackoverflow上找了这个问题,发现第一个是动态绑定,第二个是静态绑定,但是上面的两个声明有什么真正的区别吗?
如果我们没有任何区别,为什么我们应该有两个声明?
有人可以回答吗?
谢谢。
【问题讨论】:
-
你能给我链接到那些解释它的帖子吗?我试图搜索它们,但得到了解释静态和动态等差异但不完全不同的帖子?我想查看您推荐的其他帖子。
-
谢谢 Sotirios Delimanolis 和 Raj。你们两个都让我开心。这个问题想了很久,终于有答案了。我想我没有使用正确的关键字在这里搜索,例如“Program to an interface”。但无论如何,非常感谢你们俩。