問題タブ [access-modifiers]
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.
c# - ADO.NETEntityFrameworkを使用した内部クラス
データアクセス層の作成にEntityFrameworkを使用しており、すべてのクラスをにしたいと考えていますinternal
。
クラスごとにデザイナで手動で割り当てることができることを私は知っています。
更新 私は私の最初のステートメントが
ただし、すべてのクラスの単一のプロパティごとに内部修飾子を設定する必要があるようです。私は約30以上のエンティティを持っており、それを行うのは大変な作業になります。
正しくありませんでした。Entity Type
アクセスをオンに設定するときに、適切なアクセスも設定する必要があることを見逃していEntity Set
ました。
モデル全体に「デフォルトアクセス」を設定する方法を知っていますか?
c# - C#のデフォルトのアクセス修飾子は何ですか?
クラス、メソッド、メンバー、コンストラクター、デリゲート、およびインターフェイスのデフォルトのアクセス修飾子は何ですか?
c# - アクセス修飾子-ビジネスオブジェクトのプロパティ-取得と設定
DataAccessレイヤーにLINQtoSQLを使用しています。データアクセス層にあるものと同様のビジネスオブジェクトがあります。
データプロバイダーにメッセージ#23が表示されます。メッセージのインスタンス化時に、メッセージコンストラクターで、MessageTypeを取得し、MessageTypeクラスの新しいインスタンスを作成し、データベースからMessageType情報を入力します。
したがって; これでメッセージのMessageTypeの名前を取得したいと思います。
また、管理者にMessageTypeを設定してもらいたい
しかし、私はユーザーがMessageType.Nameを公に設定することを望んでいません。しかし、新しいMessageTypeインスタンスを作成すると、外部クラス(データアクセス層)から設定するため、Nameプロパティのアクセス修飾子はパブリックになります。
これをプロパティからinternalに変更して、クラスがパブリック変数のようにアクセスできるようにし、他のアプリケーションがアクセスして変更できないようにすることができます。
公共の財産のように見えるので、これはまだ正しく感じられません。この状況でのパブリックアクセス修飾子は悪いですか?ヒントや提案をいただければ幸いです。
ありがとう。
c# - 内部クラスのパブリックおよび内部メンバー?
わかりました、これは少しばかげた質問かもしれません。確かに明白な答えがありますが、ここで微妙な点を見逃していないかどうか興味がありました.
クラスで宣言されたメンバーとクラスでpublic
宣言されたメンバーの間に可視性/使いやすさの点で違いはありますか?internal
internal
internal
すなわち間
と
public
メソッドをおよびとして宣言し、virtual
である派生クラスでオーバーライドした場合、public
この修飾子を使用する理由は明らかです。しかし、これは唯一の状況ですか...他に何か不足していますか?
c++ - エラー:'void Base :: output()'はこのコンテキスト内で保護されています
次のコードによって生成されるエラーについて混乱しています。Derived :: doStuffでは、Base::outputを呼び出すことで直接アクセスできます。
output()
呼び出すことができるのと同じコンテキストでへのポインタを作成できないのはなぜoutput()
ですか?
(特定のコンテキストで名前を使用できるかどうかは、保護されている/プライベートで管理されていると思いましたが、明らかにそれは不完全ですか?)
正しい解決策のcallback(this, &Derived::output);
代わりに書くことの私の修正はありますか?callback(this, Base::output)
編集:これがスターダードのどこにあるのか知りたいのですが、ほとんどの場合、私はコンセプトに頭を悩ませようとしています。私の問題は、callback
の保護されたメンバーにアクセスできないことだと思いますが、ポインタを渡すとDerived
呼び出すことができます。の保護されたメンバーはDerived::output
、の保護されたメンバーとどのようにDerived
異なりDerived
ますか?Derived
Base
inheritance - Why i can not acces the protected properties in my web application
i have a web application which has a Base class in which i define all the properties common to the web pages. The base class extends System.Web.UI.Page
Furthermore i have a Base User control class where are defined all the properties common to the user controls. the Base User Control extends System.Web.UI.UserControl
all the properties in both base classes are protected.
All the web pages extends the base class .
All the controls extends the base user control class.
The problem is i can not access the properties defined in the base class from the user
controls and I can not extend two classes in the base user controls
The question is
how can i access the properties defined in the Base class from within the user controls?
I hope i have been clear
Thanks
java - How do Java public/private and static modifiers affect multiple variables declared on one line?
Are the following equivalent?
And if so, do they still have the same modifiers with different values?
java - Java 設計に関する質問 - クラス、関数、アクセス修飾子
私はJavaの初心者です。いくつかの設計上の質問があります。
次のことを行うクローラー アプリケーションがあるとします。 1. URL をクロールしてそのコンテンツを取得する 2. コンテンツを解析する 3. コンテンツを表示する
関数を実装するか、クラスを実装するかをどのように決定しますか? -- パーサーはクローラー クラスの関数にする必要がありますか、それとも他のアプリケーションでも使用できるようにそれ自体をクラスにする必要がありますか? -- クラスである場合、保護されたクラスまたはパブリック クラスである必要がありますか?
public クラスと protected クラスのどちらを実装するかをどのように決定しますか? -- たとえば、解析されたコンテンツから統計情報を生成するクラスを作成する必要がある場合、そのクラスを保護する必要があるか (クローラー クラスのみがアクセスできるようにするか)、またはパブリックにする必要がありますか?
ありがとうロン
c# - 宣言で具体的な実装の代わりにインターフェイスの使用を強制する (.NET)
C++ では、次のことができます。
はメソッドをderived_class
オーバーライドしてにします。その結果、このメソッドを呼び出す唯一の方法は次のようになります。do_something()
private
オブジェクトを type として宣言するderived_class
と、プライベートであるためメソッドを呼び出すことはできません。
インターフェイスとして使用される抽象クラスを作成すると、フィールドを具象型として誤って宣言する人が誰もいないことを確認できますが、常にインターフェイス クラスを使用するため、これは非常に優れていると思います。
public
C# / .NET では一般的に、メソッドをオーバーライドするときに からへのアクセスを狭めることはできないprivate
ため、ここで同様の効果を達成する方法はありますか?
java - パッケージプライベートメソッドにアクセスする外部クラス
パッケージにクラスがあり、org.jake
デフォルトのアクセス権(修飾子なし)を持つメソッドがあるとします。その場合、メソッドはパッケージ内にのみ表示されます。
しかし、誰かが私のフレームワークのjarを受け取ったとき、彼らが新しいクラスを作成し、そのパッケージをとして宣言し、org.jake
私のおそらく見えないメソッドを使用するのを防ぐにはどうすればよいですか?
言い換えれば、これを防ぐために私ができることはありますか?