ich diesen Code in C#:Generics Methode Verwendung
private static T GetPage<T>() where T : new()
{
var page = new T();
PageFactory.InitElements(Browser.Driver, page);
return page;
}
public static AboutPage About
{
get { return GetPage<AboutPage>(); }
}
Ich habe versucht, dies in Java zu implementieren, wie ich wirklich das Konzept gefallen, aber ich bin nicht gut mit Generika (und vor allem mit C#) . Also, das ist mein Code:
private static <T> T getPage(Class<? extends T> cls) throws Exception{
T page = cls.newInstance();
PageFactory.initElements(driver, page);
return page;
}
public static LoginPage Login() {
return LoginPage.getPage();
}
Es funktioniert überhaupt nicht. Ich habe das Gefühl, dass mir die Grundlagen fehlen, daher würde ich mich über jede Hilfe und jeden Rat freuen.
_Es funktioniert überhaupt nicht_ ist keine nützliche Bemerkung. Bitte erklären Sie _what_ funktioniert nicht. –
@JornVernee Im folgenden Code bekomme ich: "Kann die Methode getPage()" zum Beispiel nicht auflösen. TBH, ich bin mir nicht einmal sicher, dass ich es sogar logisch umgesetzt habe. – Monstryyy
Ah, ich verstehe. Aber Sie zeigen nicht die Implementierung von '' 'LoginPage.getPage()' ''. Wer eine Signatur hat, ist nicht mit der obigen Methode kompatibel. –