私はかなり長い間、PHP やその他の Web プログラミング言語でプログラミングを行ってきましたが、Java はまったくの初心者です。また、PHP でプログラミングするときに手続き型アプローチを使用しているため、OOP もまったく初めてです。今、私は非常に基本的な Java チュートリアルに従っています。
別の「銀行口座」に表示するための次のコードがあります。
public class UseAccount extends JFrame {
public static void main(String[] args) {
Account myAccount = new Account();
Account yourAccount = new Account();
myAccount.name = "Jimmy";
myAccount.address = "Arjeplogsvägen 1";
myAccount.balance = 1250.70;
yourAccount.name = "Greg Giraldo";
yourAccount.address = "Fishermans friend's 4";
yourAccount.balance = -5820.30;
myAccount.display();
System.out.println();
yourAccount.display();
}
}
そして、ここに「アカウント」クラスがあります:
public class Account{
String name;
String address;
double balance;
void display() {
System.out.print(name);
System.out.print(" (");
System.out.print(address);
System.out.print(") has $");
System.out.print(balance);
}
}
これは本当にうまくいきます。しかし、今はこの情報を JTextArea に出力したいと考えています。そこで、UseAccount クラス用に次のコードを作成しました。
import java.awt.*;
import javax.swing.*;
public class UseAccount extends JFrame {
JTextArea output = new JTextArea();
public UseAccount() {
setLayout(new BorderLayout());
add(output, BorderLayout.CENTER);
}
public static void main(String[] args) {
UseAccount frame = new UseAccount();
frame.setTitle("Account");
frame.setSize(500,400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
Account myAccount = new Account();
Account yourAccount = new Account();
myAccount.name = "Jimmy";
myAccount.address = "Arjeplogsvägen 1";
myAccount.balance = 1250.70;
yourAccount.name = "Greg Giraldo";
yourAccount.address = "Fishermans friend's 4";
yourAccount.balance = -5820.30;
myAccount.display();
System.out.println();
yourAccount.display();
}
}
そして、「Account」クラスに「UseAccount」クラスを拡張させ、テキストを表示するために output.append("the_text") を使用しようとしていました。しかし、これは明らかに機能しません:
public class Account extends UseAccount{
String name;
String address;
double balance;
void display() {
output.append(name);
output.append(" (");
output.append(address);
System.out.print(") has $");
System.out.print(balance);
}
}
とにかく動作しないため、すべての system.out.print() を output.append に変更しませんでした。
この他のクラスから textarea("output") のテキストにアクセスして変更する方法を知りたいですか?
誰かがこの小さな問題で私を助けてくれることを願っています.
同様の質問が以前にここで尋ねられたことを知っています。そして、私の問題を解決するために、これらの質問に対する解決策を調べようとしました。しかし、他の質問のほとんどは複雑すぎて、それが何であるかを理解できませんでした. したがって、私は今、自分の質問を投稿しようとしています。