問題タブ [sealed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - Scalaの封印された抽象vs抽象クラス
sealed abstractとabstractScalaクラスの違いは何ですか?
c# - 「内部型以外は密閉型」の型を作れますか?
同じアセンブリ内の型から継承できるが、アセンブリの外部からは継承できない型を作成したい。タイプをアセンブリの外部に表示したいのですが。
これは可能ですか?
string - C# で String クラスの関数をオーバーライドする方法
たとえば、文字列に部分文字列が含まれているかどうかを確認する必要があるため、次のようにします。
しかし、アイテムの配列がある場合
たとえば、配列内のいずれかの項目が文字列に含まれている場合に true を返す関数を String クラス内に作成する必要がありました。
このシナリオでは、別のクラスで関数を作成する代わりに、Contains(string) 関数を Contains(IEnumerable) でオーバーライドしたいと考えています。これを行うことは可能ですか?もしそうなら、どうすれば関数をオーバーライドできますか? どうもありがとうございました。
だからここに完全な解決策があります(ありがとうみんな):
c# - なぜ String クラスは final なのですか?
重複の可能性:
Javaで文字列が最終的なのはなぜですか?
私のプログラミング生活の中で、String クラスが final/sealed/NotInheritable でなければよかったと思う瞬間がいくつかあります。
モンキーレンチを作品に投げ込むことを私がするのを妨げようとしている言語アーキテクトは何ですか.
むしろ、私が String クラスを拡張することを制限することによって、言語アーキテクトが私が作業に投入されるのを防ごうとするモンキーレンチは何ですか?
拡張可能な文字列クラスの長所と短所のリストを挙げていただけますか?
c# - seal キーワードがアクセス修飾子のリストに含まれていないのはなぜですか?
sealedC# 言語のアクセス修飾子のリストに含める必要があると思います。除外された理由を誰か教えてください。
c# - Sealed クラスにデータバインドするにはどうすればよいですか?
いくつかの WPF コントロールを、提供されたシール クラスにバインドしようとしています。シールされているため、それを継承して INotifyPropertyChanged を実装するクラスを作成することはできません。したがって、これを行うにはどうすればよいかわかりません。INotifyPropertyChanged を実装するラッパーを作成する必要がありますか? 何をすべきかについてのヒントはありますか?
c# - パラメータなしのコンストラクタを使用せずに、封印されたクラスをXMLシリアル化するにはどうすればよいですか?
私は現在XMLSerializer、自分のクラスのリストをシリアル化するためにを使用しています。クラスのプロパティの1つは、パラメーターなしのコンストラクターを持たない封印されたクラスのインスタンスであるため、XMLシリアライザーはクラスのシリアル化を拒否します。どうすればこれを回避できますか?そのプロパティをシリアル化する必要があります。
そのクラスをシリアル化する方法を指定する方法はありますか?
XMLを使い続けたいと思います。この問題が発生しない、使用できる別のXMLシリアライザーはありますか?
繰り返しになりますが、これが重複である場合はお詫び申し上げますが、何を検索すればよいかわかりませんでした。
[編集]明確にするために、私は封印されたクラスのソースにアクセスできません。
c# - 封印されたクラスのパフォーマンスの利点の証拠
重複の可能性:
封印されたクラスは本当にパフォーマンス上の利点を提供しますか?
私のチームは内部で封印されたクラスの議論に取り組んでおり、議論を設計の問題にまで単純化し、パフォーマンスの神話を議論の議題から外したいと考えています。
クラスをシール済みとして宣言することによって導入されたパフォーマンスの向上を示すコードを投稿できますか? 1 秒あたり 2,000 万回の仮想メソッド呼び出しでは、1,000 万回の反復でおそらく 1 ~ 2 ミリ秒という大きなメリットは見られませんが、それでも結果が飛び跳ねるのでわかりません。これは、デバッグおよびリリースの実行に適用されます。
ps 私は、特にソフトウェアがチームや組織の境界を越えて配信される場合や、クラスがコンポーネント スタイルでアセンブリにパッケージ化されている場合に、封印されたクラス設計の利点について、John Skeet が得た知恵のいくつかに従います。
.net - 抽象封印されたクラス
c ++/cliについてのちょっとした質問。抽象クラスには、派生クラスによって実装される抽象メソッドがあり、封印されたクラスは継承を許可しません。
では、なぜ.NET基本クラスライブラリに抽象シールとして定義されたクラスがいくつかあるので、たくさん見つけることができます.. ??!
c# - C#での封印された方法
私はC#の初心者です。Sealedキーワードについて読んでいます。Sealedクラスについて読んでいます。Sealedメソッドについても読んでいます。Sealedメソッドも作成できます。この行は(メソッドをSealedとして宣言することで、回避できます。このメソッドをさらにオーバーライドします。)デモを作成しましたが、上記の行と封印されたメソッドの意味が使用されていることを理解していませんでした。以下は私のコードです:-
封印された方法を使用する理由と、封印された方法の利点を教えてください。