老师布置的作业:简单模拟一个使用类和接口的菜单系统。
问题分析:使用基于文本菜单的程序通常工作如下:
Ø 几个选项的菜单显示与屏幕上;
Ø 请求用户通过按一个或多个键来选择一个选项;
Ø 依照用户的选择,执行某个动作;
Ø 菜单再次显示直到用户选择退出。
编程提示:程序设计可以分三步进行
Ø 首先创建一个MenuUser接口,该接口提供一个抽象方法performAction
Ø 接下来创建一个Menu类,该类显示几个选项请求用户输入,并且依照用户的选择作为输入调用performAction执行还未详细说明的动作
Ø 类要具有用户界面必须实现MenuUser接口以及提供一个具体实现方法performAction,这样我们就能够使用该类和用户的交互。
类的实现:实现一个MenuUser接口,一个Menu类,最后测试方法是否可行需要一个MenuTest类。

解决方案 »

  1.   

    是这个意思么?这题挺简单但对人的理解能力是个考验.package willishz.foundation;/**
     * 菜单系统使用的用户.
     */
    public interface MenuUser {    /**
         * 用户执行选择动作.
         */
        public void performAction();
    }
    --------------------------------------------
    package willishz.foundation;public class Menu implements MenuUser {    private String college;
        private String department;
        private int grade;
        
        public void performAction() {
            System.out.println("College=" + this.getCollege() + " Department=" + this.getDepartment() + " Grade=" + this.getGrade());
        }    public String getCollege() {
            return college;
        }    public void setCollege(String college) {
            this.college = college;
        }    public String getDepartment() {
            return department;
        }    public void setDepartment(String department) {
            this.department = department;
        }    public int getGrade() {
            return grade;
        }    public void setGrade(int grade) {
            this.grade = grade;
        }
    }
    --------------------------------------------
    package willishz.foundation;public class MenuTest {
        public static void main(String[] args) {
            Menu menu = new Menu();
            menu.setCollege("OxFord");
            menu.setDepartment("ComputerScience");
            menu.setGrade(3);
            menu.performAction();
        }
    }