刚学到继承和多态那个章节,课后习题有个是写个小型图书管理系统。
题目要求是:
1. 图书馆中有书籍、期刊、报纸,设计个类层次结构,描述它们的相关信息,并验证所设计类的使用情况 。
2. 程序运行后显示一个菜单,选择操作(这个我知道),操作有:增加书籍、期刊、报纸;跟新书籍、期刊、报纸信息;
   删除指定的书籍、期刊、报纸信息;还有查询它们的信息。
3. 尽可能保证代码的重用性。所以不需要GUI图形界面和数据库。
如果是C语言 还可以用数据结构里的链表什么的 ,但用JAVA就不知道咋做了。帮忙说说写这程序的大概思路或总体框架吧 ~~ 谢谢!

解决方案 »

  1.   

    出版物父类,子类:书籍、期刊、报纸
    出版物有名称、ISBN号、出版社等属性
    书籍加属性:页数、价格、作者
    期刊加属性:刊次、类型、出版日期
    报纸加属性:出版日期
    增删改查,用父类类型作为参数类型和返回类型
    C的链表都会做,Java中现成的LinkedArrayList是直接用的,上手应该可以很快了
    周末都这样
      

  2.   

    [Quote=引用 2 楼 magong 的回复:]
    引用楼主 zzz5512536 的回复:
    1. 图书馆中有书籍、期刊、报纸,设计个类层次结构,描述它们的相关信息,并验证所设计类的使用情况 。出版物父类,子类:书籍、期刊、报纸
    出版物有名称、ISBN号、出版社等属性
    书籍加属性:页数、价格、作者
    期刊加属性:刊次、类型、出版日期
    报纸加属性:出版日期下面是关键
    增删改查,用父类类型作为参数类型和返回类型父类引用指向子类对象,这就是多态,是面向对象的精华!
      

  3.   

    LinkedArrayList··这个··增删查改·无非就是一些Add()``remove()`的操作·楼主可以查查API文档··
      

  4.   


    我的意思是如果不用LinkedArrayList该怎么做。
    因为我想用目前学的继承和多态那个章节的知识完成。
      

  5.   

    要不用个对象数组吧。直接定义死他们的内容。
    你说C能用链表。那JAVA一样可以用。。
      

  6.   

    資料部分前面說了,先定義共同資料,再繼承分類成期刊,報紙等等。
    這部分資料可以用一個Set來放,而為了查詢方便,
    同時間可以用幾個Map來同步資料,但這不是必要功能。最好另外建立一個樹狀分類類別,每個類別裡面才是期刊,書籍等等資料,
    就是除了書籍,還要有一個目錄類別,目錄類別裡面關聯到書籍。所以你只要定義兩種類別,一個是書籍,一個是分類,書籍可以有繼承,分類則不需要。
      

  7.   


    这个太高深了,什么Map完全不懂啊……
      

  8.   

    你可以用MVC结构 针对书籍、期刊、报纸各封装一个类,用Dao,frame,和pojo模型, 增删改查无非就是sql上的东西了 用封装好了的sql类 传递你的sql语句 。。就ok了