問題タブ [static]
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.
java - 「非静的メソッドは静的コンテキストから参照できません」の理由は何ですか?
非常によくある初心者の間違いは、そのクラスのインスタンスを作成せずにクラス プロパティを「静的に」使用しようとする場合です。上記のエラーメッセージが表示されます:
非静的メソッドを静的にするか、そのクラスのインスタンスを作成してそのプロパティを使用できます。
この背後にある理由は何ですか?解決策ではなく、理由に関心があります。
java - Java:`static`メソッド
次のような静的メソッドを呼び出すと、次のようになります。
インスタンスが作成されないので、静的メソッドのクラスはどのくらいの期間メモリに保持されますか?
同じメソッドを呼び出すと、インスタンスが存在しないため、呼び出しごとにクラスが再ロードされますか?
また、呼び出されたときに個々の静的メソッドのみがロードされますか、それとも1つの静的メソッドのみが使用される場合でも、クラスのすべてのメソッドと静的メソッドがメモリにロードされますか?
c++ - C++: プログラムの終了時に静的プリミティブは無効になりますか?
次のような関数があるとします。
問題はプログラムの終了時です。ptr 変数が無効になることはありますか (つまり、その ptr の内容は終了プロセスによってクリーンアップされます)。この関数が漏れていることは承知していますが、簡単にするための例にすぎません。
同じ質問は、ポインター以外の他のプリミティブにも当てはまります。静的な整数を持っている場合、その整数の値は常に終了まで持続しますか、それとも静的な破棄順序の問題により可変ですか?
編集:
明確にするために、静的ポインター (または int や float などの他のプリミティブ型) の内容が実際にどうなるのかを知りたいのですが、それが指しているメモリではありません。たとえば、ptr が、他の静的クラスのデストラクタでチェックしたいメモリ アドレスを指しているとします。ptr の内容が変更されない (つまり、静的破棄プロセス中にポインター値がクリーンアップされない) という事実を信頼できますか?
ありがとう、ジョー
file - JBoss が提供する静的ファイルの http ヘッダーを変更する方法
いくつかの静的ファイル (MS Word ドキュメントなど) を含む Web アプリケーション (.war) があります。これらのファイルをダウンロードしようとすると、JBoss は応答にいくつかの HTTP ヘッダーを自動的に設定します。これらのヘッダーを特定の値に設定する (または省略する) ように JBoss (バージョン 3.2.7) を構成する方法はありますか? 私が特に興味を持っているのは、
これは、Internet Explorer で https 経由でファイルをダウンロードするときに問題が発生するためです (IE はファイルをディスクに保存することを拒否します)。
ところで。この動作は、Windows レジストリにエントリを追加することで変更できます。
しかし、明らかに、ファイルをダウンロードするためだけにレジストリをいじるようにお客様に依頼するつもりはありません。
どんな提案でも大歓迎です。
c# - C#、基本的なカラー クラスを設計するときの static キーワードの正しい使用
私は Color クラスを作成しており、次のような標準コンストラクターを提供しています
次に、Color.Blue、Color.Red などの最も一般的な色を取得する簡単な方法を提供したいと考えています。次の 2 つのオプションが考えられます。
私が完全に理解していないのは、どちらにも利点があるかどうか、および static キーワードがどのように機能するかということです。私の考えは次のとおりです。最初に1つのインスタンスを作成し、そのインスタンスはプログラムの全期間メモリに残り、Redが呼び出されるたびにこのインスタンスが使用されます。後者は、最初に使用したときにのみ何かを作成しますが、毎回新しいインスタンスを作成します。これが正しければ、定義済みの色をたくさん指定すると、最初の色は不要なメモリを大量に使用することになると思いますか? したがって、私が推測するたびにオブジェクトをインスタンス化することのメモリ使用量と実行時のオーバーヘッドです。
私の推論は正しいですか?クラスを設計する際のベスト プラクティスと static キーワードの使用についてのアドバイスは素晴らしいものです。
c# - Asp.Net/C# 静的変数の永続化
C# ASP.Net アプリケーションで .dll を更新すると、移行が適切に処理され、ユーザーはコードが新しいコードに切り替わる前に要求を完了することができます。
私の質問は、それが完了したときに静的変数をリセットするか、更新後も保持するかです (もちろん、静的オブジェクト自体がコードで更新されていない場合)。
c++ - モジュール固有の関数を静的として宣言していますか?
モジュールの外では見えないようにするので、静的として宣言するのがベストプラクティスだと思います。
これについてどう思いますか。
java - 静的メンバーには特別な同期ブロックが必要ですか?
次のようなクラスがあります。
オブジェクトが同期されていると見なすことができますか、それとも静的メンバーであるため問題がありますか?
編集:異なるスレッドが doSomething() にアクセスしている可能性があり、その場合、オブジェクトはスレッドセーフな方法でアクセスする必要があることに注意してください。
c - Cでmain()を静的として宣言できないのはなぜですか?
外部リンケージがあるかのように main を宣言する必要があるのはなぜですか?
なぜ静的であってはならないのですか?
外部リンケージとはどういう意味ですか??
c - Cでの速度とスペース消費の観点からの静的vsグローバル
アクセス速度とスペース消費の観点から、静的変数とグローバル変数の違いを知りたいです。(私のプラットフォームを知りたい場合:Windows上のgccコンパイラ。(Windows上のARM7組み込みプログラミング用にTriton IDEでCygwinを使用しています。Tritonには、Windows上で実行できるJavaプラットフォーム上のgccコンパイラが付属しています。))
(明らかに、この質問からファイルと関数のスコープに関して知っています)
編集: OK、マイクロコントローラー/プロセッサー環境で答えを教えてください。