私はC#全体に少し新しいですが、基本的には、作業中のアプリ用のプラグインベースのアーキテクチャを作成しています。すべてのプラグインには、次のようなインターフェイスがあるなど、いくつかの基本的なものが必要です。
interface IPlugin
{
string Username {get;}
string Password {get;}
}
問題は、ユーザー名とパスワードがインターフェースを実装するクラス内でのみ使用されるため、公開する必要がないことです。
つまり、公開のみが許可されているため、インターフェイスを使用できません。抽象クラスを使用できると思っていましたが、実装できるようにクラスメンバーに配置する必要がある正しいアクセス修飾子は何ですか?クラスから継承したときにそれを確認できます。
私は次のことを試しましたが、うまくいきませんでした。なぜうまくいかないのか、正しい修飾子が何であるかわかりません。
abstract class Plugin
{
private string Username;
}
class Imp : Plugin
{
this.Username = "Taylor";
}