18

これらのJavaスイングメソッドが廃止された理由を知っている人はいますか?

Component.show(); 
Component.hide();
4

5 に答える 5

24

JDK 1.1 で Java Beans が導入されました。Java Bean は、リフレクションとイントロスペクションに依存して、Bean のプロパティが何であるかを判断します (Bean は「コンポーネント」です)。プロパティは、プロパティ シートに表示されます。

デフォルトでは、Bean は次の形式を使用します。

boolean isXXX()
<type> getXXX()
void setXXX(<type>)

(これらの次の 2 つのメモリから移動します... これらはインデックス付きプロパティ用です)

<type> getXXX(int)
void setXXX(<type>, int)

デフォルトをオーバーライドすることはできますが、ほとんどの場合、命名パターンに依存するだけです。

そのため、表示/非表示は命名パターンに準拠せず、準拠した setVisible(boolean) に置き換えられました。

于 2009-03-12T00:24:22.453 に答える
13

ほとんどの場合、標準の get/set 命名スキームに準拠して ないためです ( 「JDK バージョン 1.1 以降、」に置き換えられています)。setVisible(boolean)

于 2009-03-11T21:58:56.687 に答える
2

JDK バージョン 1.1 以降、Component.setVisible(boolean) に置き換えられました。

于 2009-03-11T21:59:49.943 に答える
1

代替手段を使用できます:someUseFrame.setVisible(true);

于 2011-12-01T01:12:02.403 に答える
0

java.awt.Component の hide メソッドと show メソッドは、しばらく非推奨になっています。

コンポーネントの可視性を設定する適切な方法は setVisible(boolean b) です

于 2009-03-11T22:00:01.113 に答える