Seleniumのソースコードを調べていると、PageFactoryで次のことに気づきました。
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);
}
次の行を持つことの利点は何ですか?
final WebDriver driverRef = driver;
パラメータをfinalにして、新しい参照を宣言せずに次のメソッドに渡すのは理にかなっているのではないでしょうか。