私はhttps://github.com/VerbalExpressions/CSharpVerbalExpressionsて探していたし、そこに私はそこにクラスVerbalExpressionsと静的プロパティDefaultExpressionなぜpublic staticプロパティはオブジェクトを返しますか?
public class VerbalExpressions
{
public static VerbalExpressions DefaultExpression
{
get { return new VerbalExpressions(); }
}
}
され、オブジェクトが私は
VerbalExpressions verbEx = VerbalExpressions.DefaultExpression;
ように作成された、ことがわかりました初心者のC#プログラマーと私は理解しようとしています、なぜ彼らはこのようなオブジェクトを作成していますか?彼らは私が推測するシングルトンのパターンを実装していません。
このタイプの実装の原因は何ですか。誰でも助けてくれますか?
It'sのようなシングルトンパターン、you're権のない適切な使用法を実装する必要があります。ただし、プロパティにアクセスするたびに新しいインスタンスが作成されます。 – HimBromBeere
これは静的メソッド(アクセサ)です。インスタンスを作成する静的メソッドでは、何が起こるはずですか? – Vladimir
@HimBromBeereは正しいですが、(少なくともIMOでは)プロパティではなくメソッドとしてそのようなロジックを実装し、 'CreateX'のような話題の名前を付ける方が良いと指摘したいと思います。私にとって、プロパティは、アクセスするたびに同じオブジェクトであることをプロパティが示唆しています。 –