JavaとC#のアクセス修飾子を比較していました。私はJavaでC#のprotected internal
の代替案を探したかったのです。しかし、protected
修飾子が両方の言語(C#とJava)で異なることに気付きました。 Javaのprotected
はC#のprotected internal
に相当します。なぜなら、メンバは同じパッケージ内でアクセスできるからです。JavaとC#のアクセス指定子に関する混乱
彼らはJavaやC#で同じ修飾子に異なる意味を作成しているのはなぜ私は2つの質問
- がありますか?
- C#の
protected
を持つにはどうすればいいですか()Javaでのアクセスは、含まれているクラスまたはそれを含むクラスから派生したものに限定されますか?)
"あまりにも結びつきすぎて変更や維持が難しいことに注意してください"。理解できませんでした。修飾子はどのようにその役割を果たしていますか? – Shashwat
内部フィールドにアクセスするサブクラスがある場合、スーパークラスの実装を変更することを強要します。これは、カプセル化が回避に役立つ問題の1つです。 –
入手しました。ありがとう:) – Shashwat