Java 防止子类重写接口
有没有办法防止子类重写的实现 超级类实现的接口Java 防止子类重写接口,java,Java,有没有办法防止子类重写的实现 超级类实现的接口 我想在android中创建一个包含listView的自定义视图,并实现onScrolllistener,但是当子类在列表上设置onScrolllistener时。超级类中的侦听器永远不会被调用。您可以添加final关键字来执行此操作 例如: 您可以添加final关键字来执行此操作 例如: 是的,有。 最后一句话是:final 通过声明方法final,您可以声明不允许子类@重写该方法(即使没有注释) 考虑这个接口: interface MyInter
我想在android中创建一个包含
listView
的自定义视图,并实现onScroll
listener,但是当子类在列表上设置onScroll
listener时。超级类中的侦听器永远不会被调用。您可以添加final
关键字来执行此操作
例如:
您可以添加
final
关键字来执行此操作
例如:
是的,有。 最后一句话是:
final
通过声明方法final
,您可以声明不允许子类@重写该方法(即使没有注释)
考虑这个接口:
interface MyInter {
public void foo();
public String bar();
}
你们班呢
public class MyClass implements MyInter {
@Override
public final void foo() {
//Cant touch this
}
@Override
public String bar() {
return "foo";
}
}
现在,您的第三个类可以扩展MyClass,但仅限于重写bar()
,因为foo()
受final
关键字保护:
public class Thirs extends MyClass {
@Override
public String bar() {
return "bar";
}
}
是的,有。
最后一句话是:final
通过声明方法final
,您可以声明不允许子类@重写该方法(即使没有注释)
考虑这个接口:
interface MyInter {
public void foo();
public String bar();
}
你们班呢
public class MyClass implements MyInter {
@Override
public final void foo() {
//Cant touch this
}
@Override
public String bar() {
return "foo";
}
}
现在,您的第三个类可以扩展MyClass,但仅限于重写bar()
,因为foo()
受final
关键字保护:
public class Thirs extends MyClass {
@Override
public String bar() {
return "bar";
}
}
final
关键字?final
关键字?