Java 扩展页面对象基类和LoadableComponent<&燃气轮机;在一起
目前,我正在为我的一个项目实现LoadableComponent设计模式 早些时候,我使用了一个“BasePage”,其中“Pages”包下的每个页面都在扩展 现在根据LoadableComponent设计模式,每个页面都需要扩展LoadableComponent,并且应该重写'load()'和'isLoaded()'方法。但是我的问题是如何在每个页面类中同时扩展BasePage和LoadableComponent 如果我使用多级继承,那么如何为每个类定义isLoad()和isLoaded()??因为每个类都需要不同的组件。而且嵌套组件是不可能的Java 扩展页面对象基类和LoadableComponent<&燃气轮机;在一起,java,Java,目前,我正在为我的一个项目实现LoadableComponent设计模式 早些时候,我使用了一个“BasePage”,其中“Pages”包下的每个页面都在扩展 现在根据LoadableComponent设计模式,每个页面都需要扩展LoadableComponent,并且应该重写'load()'和'isLoaded()'方法。但是我的问题是如何在每个页面类中同时扩展BasePage和LoadableComponent 如果我使用多级继承,那么如何为每个类定义isLoad()和isLoaded()?
public class BasePage<T extends BasePage<T>> extends LoadableComponent<BasePage>{
.......
}
public class LoginPage extends BasePage {
..........
}
公共类基页扩展了LoadableComponent{
.......
}
公共类登录页扩展了BasePage{
..........
}
请给我推荐一个解决方案???您可以覆盖子类中的所有非私有非静态方法。以下是一个基于您的项目的示例:
public class BasePage<T extends BasePage<T>> extends LoadableComponent<BasePage>{
public boolean isLoaded() {
// Do something interesting
}
public boolean isLoad() {
// Do something interesting
}
}
public class LoginPage extends BasePage {
@Override
public boolean isLoaded() {
// Do something new based on LoginPage
}
}
公共类基页扩展了LoadableComponent{
公共布尔值已加载(){
//做些有趣的事
}
公共布尔isLoad(){
//做些有趣的事
}
}
公共类登录页扩展了BasePage{
@凌驾
公共布尔值已加载(){
//基于LoginPage做一些新的事情
}
}
更多信息可以在这里找到:好吧,我解决了它:-
public class BasePage<T extends BasePage<T>> extends LoadableComponent<T>{
@Override
public boolean isLoaded() {
// Blank as all implemented algo comes under pages
}
@Override
public boolean isLoad() {
/// Will be Blank
}
}
public class LoginPage extends BasePage {
@Override
public boolean isLoaded() {
//Write logic
}
@Override
public boolean isLoad() {
/// Write Logic
}
}
公共类基页扩展了LoadableComponent{
@凌驾
公共布尔值已加载(){
//空白,因为所有实现的algo都位于页面下
}
@凌驾
公共布尔isLoad(){
///将是空白的
}
}
公共类登录页扩展了BasePage{
@凌驾
公共布尔值已加载(){
//写逻辑
}
@凌驾
公共布尔isLoad(){
///写逻辑
}
}