Java_9+8实训Day0906作业题
来源:互联网 发布:mac关不了机 编辑:程序博客网 时间:2024/06/14 03:44
题目:
编写一个游戏程序(游戏的外型风格可能有现代型、古典型,
在未来的版本中可能还会有其他风格,比如哥特式(Gothic)等游戏中的场景有
道路(Road)
丛林(Jungle)
房屋(Building)
地道(Tunnel)
实现:
Road类
package com.problem;public class Road {private String style;Road(String style){this.style=style;}public String getStyle() {return style;}public void setStyle(String style) {this.style = style;}}
Jungle类
package com.problem;public class Jungle {private String style;Jungle(String style){this.style=style;}public String getStyle() {return style;}public void setStyle(String style) {this.style = style;}}
Building类
package com.problem;public class Building {private String style;Building(String style){this.style=style;}public String getStyle() {return style;}public void setStyle(String style) {this.style = style;}}
Tunnel类
package com.problem;public class Tunnel {private String style;Tunnel(String style){this.style=style;}public String getStyle() {return style;}public void setStyle(String style) {this.style = style;}}
Game类(抽象类)
package com.problem;public class Game {private Road road;private Jungle jungle;private Building building;private Tunnel tunnel;public Road getRoad() {return road;}public void setRoad(Road road) {this.road = road;}public Jungle getJungle() {return jungle;}public void setJungle(Jungle jungle) {this.jungle = jungle;}public Building getBuilding() {return building;}public void setBuilding(Building building) {this.building = building;}public Tunnel getTunnel() {return tunnel;}public void setTunnel(Tunnel tunnel) {this.tunnel = tunnel;}public void showRoad(){}public void showJungle(){}public void showBuilding(){}public void showTunnel(){}}
ModernGame类
package com.problem;public class ModernGame extends Game{ModernGame(){this.setRoad(new Road("这是一条现代型的道路!"));this.setJungle(new Jungle("这是一片现代型的丛林!"));this.setBuilding(new Building("这是一间现代型的房屋!"));this.setTunnel(new Tunnel("这是一条现代型的地道!"));}public void showRoad(){System.out.println(this.getRoad().getStyle());}public void showJungle(){System.out.println(this.getJungle().getStyle());}public void showBuilding(){System.out.println(this.getBuilding().getStyle());}public void showTunnel(){System.out.println(this.getTunnel().getStyle());}}
ClassicalGame类
package com.problem;public class ClassicalGame extends Game {ClassicalGame(){this.setRoad(new Road("这是一条古典型的道路!"));this.setJungle(new Jungle("这是一片古典型的丛林!"));this.setBuilding(new Building("这是一间古典型的房屋!"));this.setTunnel(new Tunnel("这是一条古典型的地道!"));}public void showRoad(){System.out.println(this.getRoad().getStyle());}public void showJungle(){System.out.println(this.getJungle().getStyle());}public void showBuilding(){System.out.println(this.getBuilding().getStyle());}public void showTunnel(){System.out.println(this.getTunnel().getStyle());}}
GothicGame类
package com.problem;public class GothicGame extends Game{GothicGame(){this.setRoad(new Road("这是一条哥特式的道路!"));this.setJungle(new Jungle("这是一片哥特式的丛林!"));this.setBuilding(new Building("这是一间哥特式的房屋!"));this.setTunnel(new Tunnel("这是一条哥特式的地道!"));}public void showRoad(){System.out.println(this.getRoad().getStyle());}public void showJungle(){System.out.println(this.getJungle().getStyle());}public void showBuilding(){System.out.println(this.getBuilding().getStyle());}public void showTunnel(){System.out.println(this.getTunnel().getStyle());}}
测试类
package com.problem;public class Test {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubGame[] game=new Game[3];game[0]=new ModernGame();game[1]=new ClassicalGame();game[2]=new GothicGame();for(int i=0;i<3;++i){game[i].showRoad();game[i].showJungle();game[i].showBuilding();game[i].showTunnel();System.out.println("====================");}}}
- Java_9+8实训Day0906作业题
- Java_9+8实训Day0905作业题
- P78,5-8作业题
- 作业题
- 作业题
- 作业题
- 作业题
- Java_9 格式化字符串
- 反射-作业题
- VB作业题
- nyoj201 作业题
- 哈工大作业题
- 第一章作业题
- NYOJ201作业题
- Nyist201 作业题
- 作业题8.23
- 7.23作业题
- 逆序<作业题>
- android 文件搜索
- 九大排序汇总
- Python小练习:追踪导弹仿真
- 无锁HashMap的原理与实现
- 初学者:介绍NSLog的使用
- Java_9+8实训Day0906作业题
- 求最大公约数的函数
- MPEG2 Program Stream结构简单介绍
- 【二叉树6】寻找二叉树中任意节点最远的距离
- poj3469Dual Core CPU(ISAP求最小割)
- android 获取当前时间
- c++实现哈夫曼编码完整代码
- RSA加密算法原理及RES签名算法简介
- oracle中删除重复数据(几个字段相同的数据为相同记录)