2

以下のようなコードを書いていますが、親クラスの静的メソッドから子クラスの値を取得する必要があります。

誰かがそれを解決するのを手伝ってくれますか? ありがとうございます。

public abstract class DataObject<T>{
    public static int GetAllTotal(){
        // How can I obtain a T propery called "code" = "001". 
        int cont = SQL.getTotalFromQuery(
                           "SELECT * from tblProducts where code = '001'"
        );
       return ffff
    }

    ...
}

public class Product extends DataObject<Product>{
    private String code = "001";
    public Product(){
    }
}

...

Product.GetAllTotal();
4

4 に答える 4

1

以下を使用する必要があります。

super.GetAllTotal();

子 (派生) クラス。

superJavaの派生クラスの親の参照はどこですか.

于 2012-05-22T16:17:45.183 に答える
1

まず、静的メソッドから動的にメンバーにアクセスできるようにするには、クラスのオブジェクトが必要です。

次に、メンバー変数getCode()の値を返す子クラスでオーバーライドする親でパブリック関数を定義できます。code

于 2012-05-22T16:19:41.253 に答える
0

引数を受け入れるように GetAllTotal メソッドをパラメーター化することはできませんか、またはメソッド定義の変更に何らかの制限があります

GetAllTotal(String code)
于 2012-05-22T17:28:06.650 に答える
0

キーワードsuperを使用して、親クラスの参照にアクセスします。あなたの場合、

super.GetAllTotal();
于 2012-05-22T16:19:24.913 に答える