![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
retrun;を取ると動作がおかしくなるんですが
return;にはどういう働きがあるんでしょうか?
お願いします。
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
//<applet code = "a.class" width = "300" height = "300"></applet>
public class a extends Applet implements ActionListener{
Dialog d;
Frame f;
public void init() {
setLayout( new GridLayout( 1, 1 ) );
Button b = ( Button )add( new Button( "frame" ) );
b.addActionListener( this );
}
public void actionPerformed( ActionEvent e ){
if( e.getActionCommand() == "frame" ){
if ( f == null ){
f = new Frame( "Kitty on your lap" );
Button fb = (Button)f.add( new Button( "Kitty " ) );
fb.addActionListener( this );
f.setSize( 200 , 200 );
f.setVisible( true );
}else if( d == null ){
f.dispose();
f = null;
}
return;
}
if( e.getActionCommand() == "OK" ) {
d.dispose();
d = null;
return;
}
d = new Dialog( f, "Kitty", true );
d.setLayout( new GridLayout( 2, 1 ) );
d.setResizable( false );
d.add( new Label( "Kitty on your lap" ) );
Button b = (Button)d.add( new Button( "OK" ) );
b.addActionListener( this );
d.setSize( 400 , 200 );
d.setVisible( true );
}
}
No.2ベストアンサー
- 回答日時:
return;は、現在実行中のメソッドを「そこで」終了させる役割があります。
今回記述されているreturn;は、2箇所ありますが、共にメソッド
public void actionPerformed( ActionEvent e ){
}
の中にあります。この場合、return;を実行すると以下のコマンドを実行せずにメソッドactionPerformed()を終了します。(この場合メソッドはイベントハンドラですが。)
必要な処理が終わったのに、return;を省いてしまうと、余分なことをしてしまうことになります。
早速の回答ありがとうございまあす。
>現在実行中のメソッドを「そこで」終了させる役割があります。
そういうことだったんですね!
どう調べていいのかも見当付かず
困ってました。
ありがとうございます!
No.1
- 回答日時:
> d = new Dialog( f, "Kitty", true );
> d.setLayout( new GridLayout( 2, 1 ) );
> d.setResizable( false );
> d.add( new Label( "Kitty on your lap" ) );
>
> Button b = (Button)d.add( new Button( "OK" ) );
> b.addActionListener( this );
>
> d.setSize( 400 , 200 );
> d.setVisible( true );
この部分が何のアクションに対応しているのか、はっきりさせてください。そうすれば、途中にreturnを書く必要はなくなるでしょう。
早速の回答ありがとうございます
なるほど 提示された部分があるため
return;が必要なんですね。
プログラムは深いです。
どうもです!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- MySQL php テーブルを作れない 2 2022/11/17 18:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
java junit list同士の比較方法
-
4択クイズでのランダム出題の...
-
JDialogを閉じた時の処理
-
ArrayListの使い方について(初...
-
JavaのswingでCardLayoutの画面...
-
Buttonを押すと画像が表示され...
-
VectorクラスとRunnableインタ...
-
C言語のポインターに関する警告
-
ループ処理の際、最後だけ","を...
-
EXCEL VBA で、0から?1から?
-
JSPやサーブレットでSystem.out...
-
ActionForm form にnullが入っ...
-
Java配列でNullPointerExceptio...
-
オブジェクトの中のプロパティ...
-
パソコンキーボードで時分秒を...
-
大量のデータを読み込んで表示...
-
数字文字列をパック10進数に変...
-
privateなフィールドは継承され...
-
javaで質問です。 文字列2023/2...
-
IF関数でEmpty値を設定する方法。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
java junit list同士の比較方法
-
JPanelの切り替えと再描画
-
JavaでのSwingを使った簡易電卓...
-
setPrefferedSizeとsetSize
-
javaで文字数制限するには?
-
4択クイズでのランダム出題の...
-
TextAreaでの文字の色
-
最後の行に移動するには?
-
JPanelの重ね方/OverlayLayout他
-
KeyListenerの使い方について
-
【Swing】JPanel クラス外から...
-
JButton-背景の透明化
-
JDialogを閉じた時の処理
-
JTable の 列幅を個別に設定す...
-
VB6.0でのTextboxの高さ変更
-
シンボルを解決できません
-
エラーで式の開始が不正ですと...
-
ArrayListの使い方について(初...
-
’じゃんけん’をするプログラム...
-
JOptionPaneでのフォーカスのト...
おすすめ情報