- - PR -
実装したプロパティの型を変えるには
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-10-19 21:01
お世話になっています。
とても悩んでしまうことがあります。 ドキュメントによると、 IDbCommandインターフェースのConnectionプロパティの型は、 IDbConnectionになっています。 public interface IDbCommand IDbConnection Connection {get; set;} ところがその実装クラスであるOracleCommandのConnectionプロパティの型は、 OracleConnectionになっています。 public sealed class OracleCommand : Component, ICloneable, IDbCommand public OracleConnection Connection {get; set;} 自分でも同じようなことをやろうと思い、下のように作ってコンパイルすると、 「'TestImpl' はインターフェイス メンバ 'ITest.Connection を実装しません。 'TestImpl.Connection' が public ではなく、static になっているか、 または戻り値の型が正しくありません。」 とコンパイルエラーになります。 どうすればこのような実装ができるのでしょうか。
| ||||
|
投稿日時: 2005-10-19 21:05
そう言う場合、インターフェイス メンバの明示的実装を行います。
ちなみにVB.NETでは、明示的実装の代わりに別名で定義し、インターフェイスの特定メンバの実装であることをキーワードで明示したりします。 | ||||
|
投稿日時: 2005-10-19 21:37
ありがとうございます。
非常によくわかりました。 明示的実装については、見たつもりでしたが、 このように使えるとは思ってもみませんでした。 とても助かりました。
|
1