對於我的一些硒腳本,我需要使用JavaScriptExecuter並且爲了在硒中使用它,我需要聲明JavaScriptExecutor js =(JavaScriptExecutor)驅動程序。請提醒我爲什麼需要通過上面的Webdriver參考? 爲了更好地理解這個概念,有人可以通過例子提一下在JAVA中向上轉換和向下轉換的建議。SeleniumJava Upcasting and Downcasting
-1
A
回答
0
在java中,爲了使用任何接口/類上可用的方法,對象應該具有相同的類或實現該接口的類。我不會深入java的細節,但對於這種特殊情況。 JavaScriptExecutor JS =(JavaScriptExecutor)驅動
如果我們要使用在像executeScript或executeAsyncScript JavaScriptExecutor接口可用的任何方法,我們將有鑄驅動程序對象以JavaScriptExecutor的,因爲這些方法不在的webdriver接口可用。因此,如果我們將驅動程序定義爲:
WebDriver driver = new ChromeDriver(); // or any other driver
並且我們希望使用此驅動程序執行腳本。我們首先必須將其轉換爲JavaScriptExecutor,然後我們可以調用它的executeScript。 如果我們嘗試直接調用驅動程序上的executeScript而不將其轉換爲JavaScriptExecutor,它將嘗試在WebDriver接口中查找executeScript方法,並且因爲它在Webdriver中不可用,Java編譯器會投訴
相關問題
- 1. Java-Upcasting and Downcasting
- 2. Upcasting ServiceContract
- 3. WCF DataContract Upcasting
- 4. 活動類Downcasting
- 5. Downcasting a class C++
- 6. Swift 3 downcasting JSON Dictionary
- 7. Java downcasting ClassCastException錯誤
- 8. 問題與downcasting圖片
- 9. SeleniumJava:刪除Gmail中的未讀郵件
- 10. 問題downcasting冬眠的查詢
- 11. Java Upcasting嵌套類型參數
- 12. Sql:「Where」and「And」
- 13. 爲什麼在c#中可以直接進行向上轉換,但爲了向下轉換,我們需要expilicit轉換?
- 14. Dynamic PDO AND and OR
- 15. rails and rmagick and webfaction
- 16. 我可以逃脫這個C++ downcasting fib嗎?
- 17. $ this_array = array(「this」,「and」,「this」,「and」,「th」)
- 18. Python「and」and「or」if語句
- 19. Alloy Look and Feel and Anti-Aliasing
- 20. AND NOT(AND)(NOT)together in query
- 21. !important and display:none and .height()weirdness
- 22. &&(AND)and || (或)在IF陳述
- 23. (OrElse and Or)和(AndAlso and And) - 何時使用?
- 24. Overloading == and!=
- 25. 在Solr查詢中寫AND AND
- 26. Python string.join(list)last and entry with「and」
- 27. Multiple Select and Join with LINQ and Lambda
- 28. 關於Truthiness and the Booleans True and False
- 29. MySQL高級查詢多個AND AND OR
- 30. PHP str_replace不會取代「AND AND」
此問題過於寬泛。網絡上已經有很多例子。只需谷歌他們,並閱讀一些。 – JeffC