2017-02-24 8 views
-5

新しい非抽象クラスを作成する際のベストプラクティスは何ですか?非抽象クラスはすべて最終的にするべきですか?

あなたがそれらを変更する必要がない限り、すべての変数は最終的なものでなければなりませんか?

最後のクラスで最終メソッドをマークするのは意味がありますか? @のyegor256の

+1

私はそうすべきではないと思います。 [this link](http://stackoverflow.com/questions/5181578/use-of-final-class-in-java)の詳細を読むことができます –

+3

"最終クラスで最終メソッドをマークするのは意味がありますか?"クラスそのものを拡張することはできないので、実際はそうではありません。 [この関連する質問](http://stackoverflow.com/questions/3182440/benefits-of-using-an-abstract-classes-vs-regular-class)いくつかの使用の可能性があります。 – Moira

+3

@ruakhあなたはまったく異なる質問に全く変わった。編集を元に戻す! – Andreas

答えて

3

非常に良い記事: Seven Virtues of a Good Object

ポイント7.彼のクラスは、決勝や良いオブジェクトがいずれかの最終的または抽象クラスから来て

抽象のいずれかです。最終クラスは、継承を介して拡張することができないクラスです。抽象クラスは子供を持てないクラスです。簡単に言えば、クラスは「あなたは私を壊すことはできません、私はあなたのためのブラックボックスです」または「私はすでに壊れています。

私は、Yegorのアプローチが日々の仕事に非常に役立つことがわかります。

関連する問題