首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在特征线性化覆盖方法时启用警告?

如何在特征线性化覆盖方法时启用警告?
EN

Stack Overflow用户
提问于 2020-07-18 03:12:16
回答 1查看 79关注 0票数 0

我有一个简单的特征遗传:

代码语言:javascript
复制
trait Foo {def foo:Unit}
trait Foo1 extends Foo {override def foo = println("Foo1")}
trait Foo2 extends Foo {override def foo = println("Foo2")}

class FooClass extends Foo1 with Foo2
(new FooClass).foo
//print Foo2 due to linearization

我希望当FooClass用重写方法扩展这两个特征时,编译器可以给我一个警告,说Foo1.foo被重写和丢弃了,因为目前它只是静默地被重写了。我如何才能做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2020-07-18 04:05:09

final修饰符添加到Foo1Foo2中的foo

实际上,一般来说,将所有方法都设为final或抽象都是一种很好的做法。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62960428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档