2009-07-08 7 views
2

Google AppEngine with Java(GAE/J)で同じエンティティ(JDO)を継承/拡張する複数のクラスを持つことは可能ですか?例えば 私が持っている:Google AppEngine(Java)の複合クラス階層

  • コンテンツ(抽象クラ​​ス)
  • コース

をして、私のコースがあります:ビデオの

  • リストをことをis extendコンテンツ番号
  • 同時に、本

  • リストは

    • ビデオが
    • ブックがタグ
    • コースのリストを持っているタグのリストを持っているタグのリストを持っている

    GAEは可能ですか?

    私はこれに似ていますが、非常に問題があります。このようなものの例はありますか?新しい質問のタイトルに基づいて

  • +0

    Maksimは、JDOが正しく動作するようにクラスに注釈を付ける方法の主な問題ですか?あるいは、Javaの継承が一般的にどのように機能するかについて質問していますか? –

    +0

    これはあなたの質問ではありませんが、Google App Engineにはデータベースビューアがあります。これは、Google App EngineアプリケーションのダッシュボードのDatastore - > Data Viewerの下にあります。 – Templar

    +0

    また、AppEngine SDK 1.2.2の新しいバージョンをお持ちの場合、ホストモードが動作している場合は、http:// localhost:8080/_ah/adminにアクセスできます。 – Maksim

    答えて

    1

    更新

    私はまだあなたの難しさとは何かを理解していないが、私はそれに打撃を与えるだろう

    ことが可能

    ご質問です継承/継承する複数の クラスを持つことができます。 Javaを持つGoogle AppEngineのクラス (GAE/J)のエンティティ

    答えは「はい」です。どうしてですか?私はあなたの質問に何もできないことは見ません。あなたはどんな問題を抱えていますか?

    私はこれに似ていますが、 は非常に問題があります。この種のものの例はありますか? 投稿した説明が間違っているとは思わないので、どうしていますか。

    、ちょうどあなたを助けるために、ここでそれを行うことができる一つの方法は、私はあなたが言及した内容に基づいて、ここで暗闇の中でショットを取るよ、

    interface Tagable { 
    public doSomeThingWithTagList(); 
    } 
    
    class abstract Content implements Tagable { 
    List<Tag> tagList; 
    } 
    
    class Video extend Content implements Tagable { 
    } 
    
    class Book Tagable{ 
    List<Tag> tagList; 
    } 
    
    class Course Tagable { 
        List<Video> videoList; 
        List<Books> bookList; 
        List<Tag> tagList 
    } 
    
    +0

    ああ、申し訳ありませんが、私の悪い。私は複雑な階層を意味します。私は自分の質問のタイトルを変更しました – Maksim

    2

    です:

    • タグリストを管理方法と共にコンテンツに追加
    • ビデオ、書籍、およびコースはすべて内容を拡張できます(デザインに意味があるかどうかは不明)
    • コースには、List of Video and Booksが含まれます。
    • すべては、私が述べたように、このデザインに論理的な意味を持たないかもしれませんが、より多くの情報がないと、私は言うことができないタグ

    のリストを持っています。

    1

    あなたが言及するクラスの関係のほとんどは、継承ではなく合成のインスタンスである必要があります。 Javaでは複数の実装継承を行うことはできませんが、複数のインタフェースを実装できます。コンポジションにはこれらの制限はなく、オブジェクトは異なる(複数の)クラスの他のオブジェクト(コンポジション)への参照を含むことができます。

    関連する問題