Springクラスのインスタンスは、その動作を特徴付ける3つのプロパティ(値はminimum、preferred、およびmaximum)を保持します。 各プロパティは、一連の規則に基づいて4番目のプロパティであるvalueの定義に含まれることもあります。 
  
  Springクラスのインスタンスは、機械的なスプリングと同様に矯正する力を受けて、推奨値(preferred値)を基準に圧縮されたり引き伸ばされたりします。 矯正力は、推奨値からの距離の1次関数としてモデル化されていますが、圧縮する力と引き伸ばす力に対応する2つの定数が含まれます。 定数は、最小値(minimum値)と最大値(maximum値)です。スプリングが最小値の状態から生成する力は、最大値の状態から生成する力と大きさが等しく、反対方向となります。 したがって、preferred値とminimum値の差はSpringの圧縮しやすさを表し、maximum値とpreferred値の差は引き伸ばしやすさを表します。 詳細は、sum(javax.swing.Spring, javax.swing.Spring)メソッドを参照してください。 
  
  Springで簡単な算術演算を定義することにより、Springのコレクションの動作を、通常の(複合ではない) Springの動作と同じレベルまで削減できます。 Springには「+」、「-」、max、およびminの演算子が定義されているため、いずれの場合も、Springは構成するスプリングに対する数学的操作が容易になっています。 
  
  Springは、共通点である推奨値(preferred値)を持つ一組の間隔として扱うことができます。 間隔に適用できる算術演算子は、次のような規則によって定義されます。[a, b]は、a <= bの場合のaからbへの間隔です。 
  
          [a1, b1] + [a2, b2] = [a1 + a2, b1 + b2]
                      -[a, b] = [-b, -a]
      max([a1, b1], [a2, b2]) = [max(a1, a2), max(b1, b2)]
  
  
  Springを[a, b, c] (a <= b <= c)と表した場合は、Springに対して同様の算術演算子を定義できます。
  
          [a1, b1, c1] + [a2, b2, c2] = [a1 + a2, b1 + b2, c1 + c2]
                           -[a, b, c] = [-c, -b, -a]
      max([a1, b1, c1], [a2, b2, c2]) = [max(a1, a2), max(b1, b2), max(c1, c2)]
  
  
  間隔とSpringの両方を使用すると、次のように正負を逆にした「-」とminを定義できます。
  
      X - Y = X + (-Y)
      min(X, Y) = -max(-X, -Y)
  
  
  算術演算子を具現化するこのクラスの静的メソッドでは、実際には、メソッド引数のプロパティ値のスナップショットを取得するような演算を、静的メソッドが呼び出された時点で実行しません。 その代わりに、静的メソッドによって、メソッドの引数への参照を含む新しいSpringインスタンスが作成されるため、作成元のスプリングの特性のうち変更される可能性のある特性は、新しいスプリングの特性によって追跡されます。 これは、関数型言語のlazy valueの考え方に似ています。 
 
 SpringLayoutを実装している場合、詳細な情報と例については、『The Java Tutorial』の「How to Use SpringLayout」を参照してください。
 
 警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。 
- 導入されたバージョン:
- 1.4
- 関連項目:
- SpringLayout,- SpringLayout.Constraints
- 
フィールドのサマリーフィールド
- 
コンストラクタのサマリーコンストラクタ
- 
メソッドのサマリー修飾子と型メソッド説明static Springconstant(int pref)柱(minimum値、preferred値、およびmaximum値がすべて値prefを持つスプリング)を返します。static Springconstant(int min, int pref, int max)minimum値、preferred値、およびmaximum値がそれぞれ値min、pref、およびmaxを持つスプリングを返します。abstract intこのSpringのmaximum値を返します。abstract intこのSpringのminimum値を返します。abstract intこのSpringのpreferred値を返します。abstract intgetValue()このSpringの現在のvalueを返します。static Springminimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの高さで定義されているスプリングを返します。static Spring常にs1とs2のいずれよりも大きいか等しい値を持つスプリングmax(s1, s2)を返します。static Springsと反対方向に動くスプリング-sを返します。static Springminimum、preferred、maximum、およびvalueの各プロパティが引数スプリングsのプロパティの倍数になっているスプリングを返します。abstract voidsetValue(int value)このSpringの現在の値をvalueに設定します。static Springs1とs2の直列接続を表すスプリングs1+s2を返します。static Springminimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの幅で定義されているスプリングを返します。
- 
フィールド詳細- 
UNSETpublic static final int UNSETプロパティ値が計算されていないことを示す整数値です。- 関連項目:
- 定数フィールド値
 
 
- 
- 
コンストラクタの詳細- 
Springprotected Spring()Springを作成するためにファクトリ・メソッドが使用します。
 
- 
- 
メソッドの詳細- 
getMinimumValuepublic abstract int getMinimumValue()このSpringのminimum値を返します。- 戻り値:
- このSpringのminimumValueプロパティ
 
- 
getPreferredValuepublic abstract int getPreferredValue()このSpringのpreferred値を返します。- 戻り値:
- このSpringのpreferredValue
 
- 
getMaximumValuepublic abstract int getMaximumValue()このSpringのmaximum値を返します。- 戻り値:
- このSpringのmaximumValueプロパティ
 
- 
getValuepublic abstract int getValue()このSpringの現在のvalueを返します。- 戻り値:
- このSpringのvalueプロパティ
- 関連項目:
- setValue(int)
 
- 
setValuepublic abstract void setValue(int value)このSpringの現在の値をvalueに設定します。- パラメータ:
- value-- valueプロパティの新しい設定
- 関連項目:
- getValue()
 
- 
constantpublic static Spring constant(int pref)柱(minimum値、preferred値、およびmaximum値がすべて値prefを持つスプリング)を返します。- パラメータ:
- pref- 新しいスプリングのminimum値、preferred値、およびmaximum値
- 戻り値:
- minimum値、preferred値、およびmaximum値のそれぞれが値prefを持つスプリング
- 関連項目:
- Spring
 
- 
constantpublic static Spring constant(int min, int pref, int max)minimum値、preferred値、およびmaximum値がそれぞれ値min、pref、およびmaxを持つスプリングを返します。- パラメータ:
- min- 新しいスプリングのminimum値
- pref- 新しいスプリングのpreferred値
- max- 新しいスプリングのmaximum値
- 戻り値:
- minimum値、preferred値、およびmaximum値がそれぞれ値min、pref、およびmaxを持つスプリング
- 関連項目:
- Spring
 
- 
minussと反対方向に動くスプリング-sを返します。- パラメータ:
- s-- Springオブジェクト
- 戻り値:
- スプリングsと反対方向に動くスプリング-s
- 関連項目:
- Spring
 
- 
sums1とs2の直列接続を表すスプリングs1+s2を返します。 2つのスプリングs1とs2のsumであるs3では、s1、s2、およびs3の力は、整数valueの精度内で同じレベルに維持されます。 圧縮時のスプリングの力は、次のようになります。value - pref ------------ pref - min引っ張られているときのスプリングの力は、次のようになります。value - pref ------------ max - prefsetValueがsumスプリングs3で呼び出されると、s3の力は上記のどれかの式を使って計算されます。 sumの力が算出されると、s1とs2のvalueはsumの力と等しくなるように設定されます。 式の評価には丸め誤差が考慮され、s1とs2のvalueのsumはs3のvalueと正確に等しくなります。- パラメータ:
- s1-- Springオブジェクト
- s2-- Springオブジェクト
- 戻り値:
- s1と- s2の直列接続を表すスプリング- s1+s2
- 関連項目:
- Spring
 
- 
max常にs1とs2のいずれよりも大きいか等しい値を持つスプリングmax(s1, s2)を返します。- パラメータ:
- s1-- Springオブジェクト
- s2-- Springオブジェクト
- 戻り値:
- 常にs1とs2の両方よりも大きいか等しい値を持つスプリングmax(s1, s2)
- 関連項目:
- Spring
 
- 
scaleminimum、preferred、maximum、およびvalueの各プロパティが引数スプリングsのプロパティの倍数になっているスプリングを返します。factorが負の値(間隔の算術式の規則に従って)の場合、最大値と最小値のプロパティは入れ替わります。たとえば、係数が0.5fの場合、結果はその入力値の「中間点」を表し、コンテナ内でコンポーネントを中央に配置するのに役立ちます。 - パラメータ:
- s- スケーリングするスプリング
- factor- スケーリングの量。
- 戻り値:
- プロパティが、入力スプリングsのプロパティにfactorをかけた値になっているスプリング
- 例外:
- NullPointerException-- sがnullである場合
- 導入されたバージョン:
- 1.5
 
- 
widthminimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの幅で定義されているスプリングを返します。 返されるスプリングは「ラッパー」の実装であり、そのメソッドによって、指定されたコンポーネントのそれぞれのサイズ・メソッドが呼び出されます。 したがって、返されたスプリングの最大値、推奨値、最小値、および値の各プロパティによって、コンポーネントのそれぞれのプロパティの現在の状態が報告され、それらのプロパティが変更に伴って追跡されます。- パラメータ:
- c- サイズの計算に使用されるコンポーネント
- 戻り値:
- プロパティが、コンポーネントのサイズ・メソッドの水平方向のコンポーネントによって定義されているスプリング。
- 例外:
- NullPointerException-- cがnullである場合
- 導入されたバージョン:
- 1.5
 
- 
heightminimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの高さで定義されているスプリングを返します。 返されるスプリングは「ラッパー」の実装であり、そのメソッドによって、指定されたコンポーネントのそれぞれのサイズ・メソッドが呼び出されます。 したがって、返されたスプリングの最大値、推奨値、最小値、および値の各プロパティによって、コンポーネントのそれぞれのプロパティの現在の状態が報告され、それらのプロパティが変更に伴って追跡されます。- パラメータ:
- c- サイズの計算に使用されるコンポーネント
- 戻り値:
- プロパティが、コンポーネントのサイズ・メソッドの垂直方向のコンポーネントによって定義されているスプリング。
- 例外:
- NullPointerException-- cがnullである場合
- 導入されたバージョン:
- 1.5
 
 
-