• 締切済み

Frameからのデータの受け取り方法

takaP-の回答

  • takaP-
  • ベストアンサー率79% (83/105)
回答No.1

プログラムAの参照を渡せば可能です。 public class A {   private String message="A";   public String getMessage() {     return message;   }   public void createMyFrameHome() {     MyFrame frm=MyFrameHome(this);     frm.show();   }   public static void main(String[] args) {     new A().createMyFrameHome();   } } class MyFrameHome extends Frame {   public MyFrameHome(A a) {     String message=a.getMessage();     System.out.println(message);   } }

関連するQ&A

  • アプレットからサーバ側のプログラムを起動したいのですが…

    仕事でJavaを使うことになったのですが、プロジェクト員一同Java初心者で、必死にJavaを勉強していますが、以下のことで困っています。申し訳ありません。助けてください。 UNIXサーバ側の設定とかをいじるプログラムがあるのですが、それをアプレットにして、SEさんがリモートからでも操作出来るようにしろ、と言われました。 とりあえず、Javaアプレットからサーバ側(アプレットのクラスが置いてあるのと同じマシン)のCプログラムを起動し、その結果を受け取るようにしたいのですが、Java経験者に相談したら「アプレットにはセキュリティ上の問題があるのでCGIかServletを使わないと出来ない」と言われました。 では…とServletの勉強を初め、サーバー側にServletEngineをいれてみたのですが、 ServletはHTTPポートと違うポート(8000番とか)を開けてそこにアクセスしなくてはいけないようにみえます。それならクライアント側プログラムをアプレットにし、サーバ側プログラムとSocket通信で結び、サーバ側プログラムがCプログラムを起動、としたほうが楽そうですが、ひとつしかポートを開きたくないと言われたのです。 もしかして「アプレット+Servlet が アプレット+CGI相当」じゃなく「Servlet が アプレット+CGI相当」なのでServlet用のポートだけ開けとけばいいとかいうことでしょうか?  とか思っていたら、JNIでC言語のメソッドをJavaメソッド扱いするとかいう話も小耳に挟みました。それでできるのかしら? ・webポートだけを開いて ・サーバ側のCプログラムを起動してその結果を受け取る ・クライアントのマシンにあらかじめインストールしなくても、ブラウザからアクセスすると操作が対話的に出来るような ものを簡単に作ろうとしたら、一体何を勉強するべきなのでしょうか…。 Applet+CGI? Applet+Servlet? RMI? JNI…? 助けてください…(TT)

    • ベストアンサー
    • Java
  • シェルスクリプトからのJavaメソッドの呼び出しについて

    シェルスクリプトからのJavaメソッドの呼び出しについて はじめまして。 現在JavaでWEBサービスを作成しています。 データベース上のデータをサーバー起動時にキャッシュして使おうと思っています。 以下のようなプログラムを作成しました。 --------------------- class クラスA{ // キャッシュ用変数 Bean cashBean = null; // コンストラクタ クラスA(){ // コネクション取得 Connection connection = XXX.getConection(); // 以下DBアクセス処理省略 cashBean = /*データベースより取得*/ } public cashBean getCashBean(){ retrun cashBean; } // ★キャッシュ再読込み public cashBean clearCash(){ // 再読込処理実施(省略) } } ---------------------------------------- サーバー起動中に、このクラスの★のメソッドを一定期間(毎日0時など)で呼び出したいと思っています。 シェルを使って外部からこのメソッドを実行することは可能でしょうか。 シェルの中で、上記のメソッドを呼び出すサーブレットを作成すれば良いのかとも思うのですが、 そもそもシェルからJavaのサーブレットを呼び出すことは可能なのでしょうか。 よろしくお願いいたします。

  • getInsets() メソッドの使い方について

    JAVA言語を勉強中の者です getInsets() メソッドでフレームの外周に空白部分を 作るのですが、その場合は以下のように   public Insets getInsets(){     return new Insets(40,10,10,10);   } とオーバーライドするとあります。 オーバーライドのみで外周に空白ができるのを確認できたのですが このオーバーライドされたメソッドをフレームのコンストラクター内等でgetInsets(); とメソッドを書かなければ, このメソッドはフレームに反映されなのではないかと考えているのですが、 実際は書かなくても外周の空白はきっちりととれます。 どうしてオーバーライドのみでこのメソッドは実行結果に反映されるのでしょうか。 よろしくお願いします   MyFrame(String ss){     .............     getInsets(); //この記述不要で動作します     .............   } 簡単なソースを記述しました import java.awt.*; public class Sample{   public static void main(String args[]){     MyFrame frame = new MyFrame("Sample.java");     frame.setSize(200,200);     frame.setVisible(true);   } } class MyFrame extends Frame{   Button b1, b2, b3, b4;   MyFrame(String ss){     super(ss);     setLocation(100,100);     setLayout(new GridLayout(2,2));     //getInsets(); この記述がないと外周空白はできないと考えています     add(b1=new Button("1"));     add(b2=new Button("2"));     add(b3=new Button("3"));     add(b4=new Button("4"));   }   public Insets getInsets(){     return new Insets(40,10,10,10);   } }

    • ベストアンサー
    • Java
  • javaでc言語を実行

    java初心者です 10年以上前にC言語で作成されたプログラムを,GUIの部分だけ JAVAで組み直したいと思っております そこで質問なのですが、例えばC言語で作成されたHELLO WORLDを表示するような 実行ファイルをJAVAで作成したボタンで実行が可能かどうか。 もし可能ならば、その方法について教えて頂きたいのですが よろしくお願いします

  • JAVA 別のプログラムを操作する

    JAVA初心者です。 JAVAで、例えばsample1.classを実行すると、 sample2.javaがコンパイルされる・・・。 というような、実行すると他のプログラムをコンパイル するようなプログラムはどのように書けば良いでしょうか?? ご教授お願いいたします。

  • データの受け渡しについて

    現在、出席票のプログラムを作っていて出てきた質問です。ただし私がJAVA初心者なため、質問もとても初歩的な部分だとは思いますが、どうぞよろしくお願いいたします。 このプログラムは2つのファイルから成り立たせたいと考えています。1つ(以下:DBTest_a)ではJAppletによってパスワードを入力する。もう2つ(以下:DBTest_b)ではDBTest_aで得たパスワードを受け取り、データベースに接続して各処理を行う(この処理内容もパスワードを表示させたウインドーで表示させたい)。というものです。 受け取るには、DBTest_aをメインにして、 str にパスワードを保持して、DBTest_bをDBTest_a内で呼び出して受け渡そうと考えました。 そのためのパスワードを入力して保持するプログラムと、データベースに接続するプログラムを別々に作成して、個別には実行できるようにはなりました。しかし、DBTest_bへのデータの受け渡しがうまく行かないままです。 現在のDBTest_bでは" JOptionPane.showInputDialog "を使って、パスワードを簡単に入力ができるようにしています。このプログラムの目的が、【キーボードからパスワードを入力して、データベースに接続】ならこれでもいいのですが、この先このプログラムを拡張する(「出席」「欠席」ボタンを押して出席率を変化せせるなどのイベントをつける予定です)ときに" JOptionPane.showInputDialog "だと都合が悪いと思い" JOptionPane.showInputDialog "を用いる必要があるなと感じました。上記で説明したデータの受け渡しがうまくいけば、拡張もできるのではないかと考えています。 長々と私の考えを載せてしまいましたが、重要な質問は【2つのプログラム間でのデータの受け渡し方法】です。

    • ベストアンサー
    • Java
  • 「インタフェースを実装してそれが持つ抽象メソッドをオーバーライドする」

    「インタフェースを実装してそれが持つ抽象メソッドをオーバーライドする」は正しい? はじめまして。Javaのインタフェースに関する質問です。 私はこれまで、インタフェースを使うときは、インタフェースを実装してクラスを宣言し、そのクラス、またはサブクラスでインタフェースがもつすべての抽象メソッドを定義する、と理解していました。 しかし、下の例をみてください。抽象メソッドの定義を、インタフェースの実装の以前で与えています。問題無くコンパイルでき、実行できます。実行結果も以下の通りです。 インタフェースの抽象メソッドへの定義の与え方やその実行のされ方は、メソッドのオーバーライドと同様と思っていましたので、下記のコードでは「クラスBが抽象クラスではありません」や、「インタフェースの抽象メソッドがオーバーライドされていません」などの文法エラーがでると思っていました。 そこで、質問です。 インタフェースが持つ抽象メソッドの定義を与える場所について、または、これに関する説明のあるページなど、何かご存知でしたら教えてください。 ★コード★ interface X{   void show(); } class A{   public void show(){     System.out.println("A");   } } class B extends A implements X{ } public class Main{   public static void main(String[] args){     X x=new B();     x.show();   } } ★実行結果★ >java Main A ★Java環境★ java 1.6.0_21 javac 1.6.0_16

    • ベストアンサー
    • Java
  • JAVA: プログラム間の通信について

    JAVA初心者の者ですが、実行可能なプログラム A, Bの2つがあるとして、 プログラムAを実行した後、 プログラムAの動作中にプログラムBを実行して、動作中のAの変数にアクセスしたり、 Aの関数を実行する事ってできないでしょうか? 調べていても中々出ないので質問させて頂きました。 すみませんが、宜しくお願い致します。

    • ベストアンサー
    • Java
  • JavaScript &アプレット or JSPで開発か?

    現在のプログラム(Steel ファブリケイション CAD software=こ今後、SFCS)(http://www.bells3.com/tcsweb/tetu/gen.htm )、パラメータ(数字)を入れるだけで、内部CADプログラムで簡単に、ビル鉄骨の設計図が出来、そして、納入、出荷、在庫管理など、事務系systemまで、装備したSFCSです。質問ですが、Javaでsytem を作るにあって、javaスクリプト、javaアプレットがいいか、それとも、JSPがいいか?。JavaScripもアプレットも,クライアント側のブラウザーが解釈し、実行するが、正確には、クライアントがダウンロードしたクラスファイルをブラウザ上の JavaVM というJava実行プログラムが解釈して実行します。サーバーはクラスファイルを提供するだけで、処理は、クライアント側に依存します。JSPの場合は、 サーバ側でプログラムを実行してページを生成するので、サーバ側の豊富な資源を使えます。例えば携帯電話などのようなJavaの実行環境のない環境においても、HTMLさえ解釈できればJavaのテクノロジのメリットを享受できるという利点があります。HTMLさえ解釈できれば、Javaのテクノロジのメリットを享受できる。特徴:1:JSP はサーバが実行するプログラムである .2:<% %> タグを用いることで、HTMLの中にプログラムを埋め込むことができる 。3:CGI と異なり、プロセス起動のオーバーヘッドがない 。(オーバーヘッドの説明=CGIはアクセスがあるたびにサーバが新しいプロセスを起動するので、オーバーヘッドとリソースの消費によるパフォーマンスの低下が避けられないというデメリットがあります。 JSPも同じだが、JSPはJSPコンテナと呼ばれるJSP実行プログラムが一度起動されていれば、その内部で実行されるので、リソースの消費が少なく効率的だというメリットがあります。) 4:Java の文法で記述でき、Java の利点を生かしたシステム構築ができる 。さて、質問、何を使うの?、JSP or アプレットや、Java Script?。

  • Javaアプリケーションをフリーソフトのようにするには

    Javaでアプリケーションを作成したのですが、アプリケーションを実行するにはコマンドプロンプトから  javac ***.java とコンパイルして、( ***.java はファイル名 )  java *** としてアプリケーションを実行しますが、ウェブ上に転がっているフリーソフトのようにダウンロードして解凍するとインストーラがあってインストーラを起動することによって既存のプログラムに追加し、コマンドからアプリケーションを起動したり、すべてのプログラムから選択することで起動したりというように作成したJavaアプリケーションにインストーラを付与する方法はあるんでしょうか? フリーソフトの中にはJavaで作成されたアプリケーションもありそうな気がするので、作成できるのだと思うのですが、ネットで探してもそのような記事は見つからず困っています。フリーソフトとして公開してみたいので...。知っている方教えてください。

    • ベストアンサー
    • Java