mentre guardando attraverso il codice sorgente di selenio ho notato quanto segue nella PageFactory:ridichiarazione dei parametri
public static <T> T initElements(WebDriver driver, Class<T> pageClassToProxy) {
T page = instantiatePage(driver, pageClassToProxy);
initElements(driver, page);
return page;
}
public static void initElements(WebDriver driver, Object page) {
final WebDriver driverRef = driver;
initElements(new DefaultElementLocatorFactory(driverRef), page);
}
Qual è il vantaggio di avere la seguente riga?
final WebDriver driverRef = driver;
Non sarebbe un senso di fare solo il parametro finale, e poi passando che insieme a quello successivo senza dichiarare il nuovo riferimento?
Sì. Avrebbe avuto più senso. –
Forse lo sviluppatore non era a conoscenza del modificatore 'final'? lolz – user1329572
Mentre questo non risponde alla domanda, ho il sospetto che sarebbe stato compilato dal bytecode dal jvm come no-op. – corsiKa