1、面向对象程序设计实验指导书51162面向对象程序设计实验指导书黄利萍 刘国奇东北大学软件学院2010.9前 言面向对象的思想可以渗透到需求分析、系统建模、体系结构设计、程序设计与实现、系统测试等多个方面,它是描述现实世界复杂对象的相当直接而且直观的有效手段,对于提高系统质量、开发效率和代码重用率,都有明显的效果。面向对象程序设计课程是软件工程专业的重要专业基础课程之一,该门课程注重实践性和实用性,主要通过面向对象程序设计思想和Java语言结合起来,让学生掌握面向对象程序设计思想,以及熟练使用Java语言进行面向对象的编程,因此学生不能满足于只听懂老师讲授的课堂内容,看懂书上的程序,应将课堂教学
2、与实践环节紧密结合,使得学生加深对讲授内容的理解,学会上机调试程序。也就是善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行。面向对象程序设计是结合卡耐基梅隆大学的SSD3而形成的课程,该课程的教学体系和实验体系都很完整,并且东北大学软件学院也提供了良好的教学实验环境,希望同学们能够充分利用实验条件,认真完成实验,从实验中得到应有的锻炼和培养。希望同学们在使用本实验指导书及进行实验的过程中,能够帮助我们不断地发现问题,并提出建议,使面向对象程序设计真正能够帮助同学们学习。实验要求面向对象程序设计课程实验的目的是为了使学生在课堂学习的同时,通过一系列的实验,使学生加深了解和更好地掌
3、握面向对象程序设计课程教学大纲要求的内容。在面向对象程序设计的课程实验过程中,要求学生做到:(1)预习实验指导书有关部分,认真做好实验内容的准备,就实验可能出现的情况提前作出思考和分析。(2)仔细观察调试程序过程中出现的各种问题,记录主要问题,作出必要说明和分析。(3)遵守机房纪律,服从辅导教师指挥,爱护实验设备。(4)实验课程不迟到,如有事不能出席,所缺实验一般不补。(5)本实验采用的开发环境为Eclipse,同学在做实验之前要求熟悉该集成开发环境。 Experiment 1 Implementing the Gourmet Coffee System(4 Hours)Prerequisit
4、es, Goals, and OutcomesPrerequisites: Before you begin this exercise, you need mastery of the following: Object Oriented Programming o Knowledge of class design Class attributes Constructors Accessor methods Mutator methods o Knowledge of inheritance How to implement a specialization/generalization
5、relationship using inheritance Goals: Reinforce your ability to implement Java classes using inheritance. Outcomes: You will demonstrate mastery of the following: Implementing the constructors, accessors, and mutators of a Java class Using inheritance to implement a specialization/generalization rel
6、ationship Background This assignment asks you to implement some of the classes in the Gourmet Coffee System specified on Exercise 2.DescriptionIn this assessment, you will implement the classes and relationships illustrated in the following class diagram:Figure 1 Portion of Gourmet Coffee System cla
7、ss diagramThe class specifications are as follows:Class ProductThe class Product models a generic product in the store.Instance variables: code. The unique code that identifies the product description. A short description of the product price. The price of the product Constructor and methods: public
8、 Product(String initialCode, String initialDescription, double initialPrice)Constructor that initializes the instance variables code, description, and price. public String getCode(). Returns the value of instance variable code. public String getDescription(). Returns the value of instance variable d
9、escription. public double getPrice(). Returns the value of instance variable price. boolean equals(Object object). Overrides the method equals in the class Object. Two Product objects are equal if their codes are equal. String toString(). Overrides the method toString in the class Object. Returns th
10、e string representation of a Product object. The String returned has the following format: code_description_priceThe fields are separated by an underscore ( _ ). You can assume that the fields themselves do not contain any underscores.Class CoffeeThe class Coffee models a coffee product. It extends
11、class Product.Instance variables: origin. The origin of the coffee roast. The roast of the coffee flavor. The flavor of the coffee aroma. The aroma of the coffee acidity. The acidity of the coffee body. The body of the coffee Constructor and methods: public Coffee(String initialCode, String initialD
12、escription, double initialPrice, String initialOrigin, String initialRoast, String initialFlavor, String initialAroma, String initialAcidity, String initialBody)Constructor that initializes the instance variables code, description, price, origin, roast, flavor, aroma, acidity, and body. public Strin
13、g getOrigin(). Returns the value of instance variable origin. public String getRoast(). Returns the value of instance variable roast. public String getFlavor(). Returns the value of instance variable flavor. public String getAroma(). Returns the value of instance variable aroma. public String getAci
14、dity(). Returns the value of instance variable acidity. public String getBody(). Returns the value of instance variable body. String toString(). Overrides the method toString in the class Object. Returns the string representation of a Coffee object. The String returned has the following format: code
15、_description_price_origin_roast_flavor_aroma_acidity_bodyThe fields are separated by an underscore ( _ ). You can assume that the fields themselves do not contain any underscores.Class CoffeeBrewerClass CoffeeBrewer models a coffee brewer. It extends class Product.Instance variables: model. The model of the coffee brewer waterSupply. The water supply (Pour-over or Automatic) numberOfCups. The capacity of the coffee brewer Constructor and methods: public CoffeeBrewer(String initialCode,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1