猜拳小游戏案例面向对象(猜拳游戏的设计与实现)

  本篇文章为你整理了猜拳小游戏案例面向对象(猜拳游戏的设计与实现)的详细内容,包含有猜拳游戏项目 猜拳游戏的设计与实现 猜拳游戏程序设计 猜拳小游戏课程设计报告 猜拳小游戏案例面向对象,希望能帮助你了解 猜拳小游戏案例面向对象。

  * 方法:出拳的方法

  

 1 /**

 

   2 * Computer 电脑类

   3 * 属性 :角色名,得分。

   4 * 方法:出拳的方法

   5 * @author lisi

   6 * @version 版本 1.0

   7 *

   8 */

   9 public class Computer {

  10 // 属性 昵称,得分

  11 String computer_name = "电脑";// null

  12 int computer_score = 0;// 0

  14 //出拳方法 int --- 参数无参数。实例方法,对象方法 不被static修饰。

  15 /**

  16 * Computer 出拳方法

  17 * @return 电脑出的拳:1 剪刀 2 石头 3 布

  18 */

  19 public int computerShowFist() {

  20 int show = (int)(Math.random()*3)+1;

  21 switch (show) {

  22 case 1:

  23 System.out.println(computer_name + "出了剪刀");

  25 break;

  26 case 2:

  27 System.out.println(computer_name + "出了石头");

  28 break;

  29 case 3:

  30 System.out.println(computer_name + "出了布");

  31 break;

  35 return show;

  41 }

 

  

1 public class ComputerTest {

 

  2 public static void main(String[] args) {

  3 Computer computer = new Computer();

  4 int show = computer.computerShowFist();

  5 System.out.println(show);

  9 }

 

  电脑类测试类

  

 1 import java.util.Scanner;

 

   3 /**

   4 * Person 类

   5 * 名字

   6 * 分数

   7 * 出去的功能

   8 * @author lisi

  10 */

  11 public class Person {

  12 String person_name = "匿名";

  13 int person_score = 0;

  16 // 人出拳

  17 /**

  18 * 人出拳的方法

  19 * @return 人出的拳头;1 剪刀 2 石头 3 布

  20 */

  21 public int personShowFist() {

  22 Scanner sc = new Scanner(System.in);

  23 System.out.println("请出拳:1 剪刀 2 石头 3 布 ");

  24 int show = sc.nextInt();

  25 switch (show) {

  26 case 1:

  27 System.out.println(person_name + "出了剪刀");

  29 break;

  30 case 2:

  31 System.out.println(person_name + "出了石头");

  32 break;

  33 case 3:

  34 System.out.println(person_name + "出了布");

  35 break;

  40 return show;

  43 }

 

  

 1 import java.util.Scanner;

 

   3 /**

   4 * 游戏类

   5 * 操作 管理 上面定义的Person类和Computer类,

   6 * 调用各自出拳的方法,去做比较,输赢。

   7 * @author

   9 */

   10 public class Game {

   12 // 把 Person 和 Computer,作为自己的属性值。

   13 Person person;

   14 Computer computer;// 类作为另外一个类的成员。

   15 // 引用数据类型默认值:--- null- --- 空指针

   16 // 定义属性count表示对战的次数

   17 int count = 0;

   20 public void inital() {

   21 if(person == null) {

   22 person = new Person();

   23 }

   24 if(computer == null) {

   25 computer = new Computer();

   26 }

   27 }

   30 // 开始游戏的方法:

   31 public void startGame() {

   32 Scanner sc = new Scanner(System.in);

   33 System.out.println("-----------欢迎加入猜拳游戏--------------");

   34 System.out.println();

   35 System.out.println("************************************");

   36 System.out.println("出拳的规则 : 1 剪刀 2 石头 3 布");

   37 System.out.println("**************猜拳开始********************");

   38 System.out.println("****************************************");

   39 System.out.println();

   41 // 调用初始化方法

   42 inital();

   43 // 加入角色名

   44 System.out.println("选择角色:1 曹操 2 吕布 3 孙权");

   45 int role = sc.nextInt();

   47 switch (role) {

   48 case 1:

   49 computer.computer_name = "曹操";

   50 break;

   51 case 2:

   52 computer.computer_name = "吕布";

   53 break;

   54 case 3:

   55 computer.computer_name = "孙权";

   56 break;

   57 }

   58 System.out.println("请输入你的名字:");

   59 person.person_name = sc.next();

   61 System.out.println(person.person_name + " PK " + computer.computer_name +" 对战");

   62 System.out.println("是否开始游戏:y / n");

   63 String answer = sc.next();

   65 while("y".equals(answer)) {

   68 // 调用各种的出拳:

   69 int personFist = person.personShowFist();

   70 int computerFist = computer.computerShowFist();

   72 // 根据出的拳比较输赢 1 剪刀 2 石头 3 布

   74 if (personFist == 1 computerFist == 3 personFist == 2 computerFist == 1personFist == 3 computerFist == 2) {

   75 System.out.println(person.person_name + "赢");

   76 // 添加人的分数

   77 person.person_score += 1;

   78 }else if (personFist == computerFist) {

   79 System.out.println("平局");

   80 }else {

   81 System.out.println(computer.computer_name + "赢");

   82 computer.computer_score += 1;

   83 }

   84 // 记录对战的次数:

   85 count ++;

   87 System.out.println("是否开始下一局:y / n");

   88 answer = sc.next();

   89 }

   92 // 循环结束,结束游戏

   93 System.out.println("退出游戏");

   94 // 调用展示结果的方法

   95 showResult();

   96 }

   98 public void showResult() {

   99 System.out.println("--------------------");

  100 System.out.println(person.person_name + " PK " + computer.computer_name );

  101 System.out.println("对战的次数:" + count);

  104 System.out.println(person.person_name + "的得分:"+ person.person_score);

  105 System.out.println(computer.computer_name + "得分"+computer.computer_score);

  107 if (person.person_score computer.computer_score) {

  108 System.out.println(person.person_name+ "好厉害");

  109 }else if (person.person_score == computer.computer_score) {

  110 System.out.println("最终是平局");

  111 }else {

  112 System.out.println("布要气馁,下次接着来");

  113 }

  117 }

  125 }

 

  Game类

  

public class GameTest {

 

   public static void main(String[] args) {

   Game game = new Game();

   game.startGame();

  }

 

  GameTest类

  

  以上就是猜拳小游戏案例面向对象(猜拳游戏的设计与实现)的详细内容,想要了解更多 猜拳小游戏案例面向对象的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: