这是我的代码:
package basic;
public abstract class Entity {}
Run Code Online (Sandbox Code Playgroud)
package characters;
import basic.Entity;
public abstract class Character extends Entity {}
Run Code Online (Sandbox Code Playgroud)
package player;
public class Player extends Character {}
Run Code Online (Sandbox Code Playgroud)
我得到了
该类型
Player
不能继承final class Character
.
但我检查了一百万次,我还没有final
在我的项目中使用除了ONCE.是什么赋予了?
简而言之,Java 17 中的最终类和记录有什么区别?
什么情况下应该使用记录?
我正在使用第三方库来创建一个使用Swift创建的新应用程序.类/库的作者使用final
关键字使其最终成为可能,以优化和防止覆盖其属性和方法.
例:
final public class ExampleClass {
// Properties and Methods here
}
Run Code Online (Sandbox Code Playgroud)
是否有可能扩展类并为其添加一些新属性和方法而不覆盖默认值?
像这样:
extension ExampleClass {
// New Properties and Methods inside
}
Run Code Online (Sandbox Code Playgroud) 我最近正在浏览一个 Netflix开源项目
在那里,我发现使用最终类和私有构造函数.我完全清楚这一点
但我很想知道为什么它们一起使用.虽然方法是静态的,但我们可以在没有实例化的情况下使用它们,但仍然渴望了解它背后的设计原理.