別のクラスで書かれた関数を実行するメインクラスが1つあります。これを「コード」クラスと呼ぶことにします。今度はもう1つの "コード"クラスを作成しました。そこにも関数を呼びたいと思います。私は、両方のコードクラスにコンストラクタがあり、複数のオブジェクトを作成すると、私のテストでうまくいくので、メインクラスに複数のオブジェクトを作成したくありません。私は知っているように複数のクラスを拡張することはできません。そのクラスのオブジェクトを作成せずに、2番目のコードクラスの関数を呼び出すための他の解決策はありますか?複数のクラスからの関数へのアクセス方法
ReqOrderImpMain d = new ReqOrderImpMain();
//Request Order Import - First page function calling
d.page();
d.checkLoginAndProceed();
/*d.output();
d.correctORNumber();
d.createNewOrder();
d.checkOrder();
d.checkSend();
d.quantityCheck();
d.restMatWithQuantity();
d.submit();
d.quit();*/
//Request Order Import - Rest of the pages function calling ??.output(); ??.select();
}
dの機能。最初のコードクラスから呼び出されます。私は??。function()のものを呼び出せるようにしたい。
まず、あなたのデザインは本当に混乱しています.2つの "コード"クラスがあるのはなぜですか?それらはどちらも "コード"と呼ばれていますか? FIRSTコードクラスのソースコードにアクセスできませんか? FIRSTコードクラスのメソッドを呼び出す必要があるときはいつでも、SECONDコードクラスのFIRSTコードクラスをラップしてSECONDからFIRSTのインスタンスを返すことはできませんか?質問にソースコードを追加する必要があります(たとえ単純な例でも)。デザインに問題があり、正しくアプローチしていないようです。 – sloven
こういうわけです:私は1つのメインクラスを持っていますよね?私は関数を呼び出すだけです。前のコードは私のメインメソッドから、私のメインクラスのものです。次に、私はd.page()、d.checkLoginAndProceedなどのメソッドを実装しているRequest Order Importを扱う別のクラスを持っています。そして今、私はRequest Order Importの一部である他のページをテストする必要があります。だから、私はそれらのために別のクラスを持っていたいと思っています。一つのクラスの中にすべてのコードを含めないように...そういうように見えません。あなたはなにか考えはありますか?それとも、すべての実装を1つのクラスに記述するのが唯一の方法ですか? – Tudor
質問にあなたのコードを追加しましたが、あなたはその質問に行きたいかもしれません。 – DanielBarbarian