首页 > 其他分享 >高飞实验12和13

高飞实验12和13

时间:2023-11-13 09:04:50浏览次数:34  
标签:13 12 return package Coordinates class 实验 new public

package shiyan12;

public class Client {
    public static void main(String[] args) {
        MainFrame mainframe = new MainFrame();
     mainframe.on();
    }
}
Client
package shiyan12;

public class CPU {
    public boolean run(){
        System.out.println("CPU自动成功");
        return true;
}
} 
CPU
package shiyan12;

public class HardDisk {
    public boolean read(){
        System.out.println("硬盘读入成功");
        return true;
    }
} 
HardDisk
package shiyan12;

public class MainFrame {
    public Memory memory  = new Memory();
    
      private CPU cpu = new CPU();
   
      private HardDisk hardDisk = new HardDisk();
   
      private OS os = new OS();
   
   
   
      public void on(){
   
          memory.check();
   
          cpu.run();
   
          hardDisk.read();
   
          os.load();
   
      }
  
}
MainFrame
package shiyan12;

public class Memory {
    public boolean check(){
        System.out.println("内存检查成功");
        return true;
    }
} 
Memory
package shiyan12;

public class OS {
    public boolean load(){
        System.out.println("操作系统载入成功");
        return true;
    }
}
OS

 实验13

package test13;

public class Client {
    public static void main(String[] args) {
        IgoChessman black1,black2,black3,white1,white2;
        IgoChessmanFactory factory;
        factory = IgoChessmanFactory.getInstance();
        black1 = factory.getIgoChessman("b");
        black2 = factory.getIgoChessman("b");
        black3 = factory.getIgoChessman("b");
        System.out.println("判断两颗黑棋是否相同:"+(black1==black2));

        white1 = factory.getIgoChessman("w");
        white2 = factory.getIgoChessman("w");
        System.out.println("判断两颗白棋是否相同:"+(white1==white2));

        black1.locate(new Coordinates(1, 1));
        black2.locate(new Coordinates(2, 4));
        black3.locate(new Coordinates(2, 3));
        white1.locate(new Coordinates(3, 5));
        white2.locate(new Coordinates(2, 6));
    }

}
Client
package test13;

public class Coordinates {
    private int x;
    private int y;

    public Coordinates(int x,int y) {
        // TODO Auto-generated constructor stub
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public void setX(int x) {
        this.x = x;
    }

    public int getY() {
        return y;
    }

    public void setY(int y) {
        this.y = y;
    }

}
Coordinates
package test13;

public abstract class IgoChessman {
    public abstract String getColor();
    public void locate(Coordinates coord){
        System.out.println("棋子颜色:"+this.getColor()+",棋子位置:"+coord.getX()+","+coord.getY());
    }
}

class BlackIgoChessman extends IgoChessman{

    @Override
    public String getColor() {
        // TODO Auto-generated method stub
        return "黑色";
    }

}

class WhiteIgoChessman extends IgoChessman{

    @Override
    public String getColor() {
        // TODO Auto-generated method stub
        return "白色";
    }

}
IgoChessman
package test13;

import java.util.Hashtable;



public class IgoChessmanFactory {
    private static IgoChessmanFactory instance = new IgoChessmanFactory();
    private static Hashtable ht;

    public IgoChessmanFactory() {
        // TODO Auto-generated constructor stub
        ht = new Hashtable();
        IgoChessman black,white;
        black = new BlackIgoChessman();
        ht.put("b", black);
        white = new WhiteIgoChessman();
        ht.put("w", white);
    }

    public static IgoChessmanFactory getInstance(){
        return instance;
    }

    public static IgoChessman getIgoChessman(String color){
        return (IgoChessman)ht.get(color);
    }

}
IgoChessmanFactory

 

标签:13,12,return,package,Coordinates,class,实验,new,public
From: https://www.cnblogs.com/y1126/p/17828400.html

相关文章

  • 实验1:UML与面向对象程序设计原则
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、掌握面向对象程序设计中类与类之间的关系以及对应的UML类图;2、理解面向对象程序设计原则。[实验任务一]:UML复习阅读教材第一章复习UML,回答下述问题:Q:面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。A......
  • 实验2:简单工厂模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解简单工厂模式的动机,掌握该模式的结构;2、能够利用简单工厂模式解决实际问题。[实验任务一]:女娲造人使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,......
  • 11月13每日打卡
    实验13:享元模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解享元模式的动机,掌握该模式的结构;2、能够利用享元模式解决实际问题。 [实验任务一]:围棋设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。实......
  • 2023年11月12日每日随笔
    今天,主要进行了ERP的系统的主要功能的揣摩和学习,对于博欧ERP的网站进行参考,可能我的能力不够吧,对于支出收入,那里面的功能我一点也不理解,我中感觉把题目改成输入输出好,接受外界信息,修改外界信息等等,也在网上找到了许多的参考,对于分摊工资也进行了大概了解,有着具体的思路,但是想找一......
  • ES7-ES12
    ES6是JavaScript的一次重大升级,但随后的版本也带来了许多新特性和改进。下面是ES6之后的几个版本的重要特性:ES2016(ES7):指数运算符(**):引入了指数运算符,用于计算乘方。Array.prototype.includes():提供了一种更简洁的方法来判断数组中是否包含某个元素。ES2017(E......
  • 2023-2024-1学期20232412《网络空间安全导论》第十周学习总结
    教材学习内容总结本周主要学习《网络空间安全导论》第一章的内容,初步了解了网络空间安全的概念以及学科所覆盖的内容,了解了相关的法律法规,并且接触了之前从未了解的信息安全标准。通过第一章的学习,我也正式开始对我们专业的学习,认识到网络空间安全的重要性,掌握了计算机学习与其他......
  • 11.13~11.19复习
    1.spring全家桶Spring启动流程?springbootSpringBoot启动流程?SpringBoot好处?SpringBoot常用注解2.mysql优化3.jvm详细说一下cms的回收过程详细说一下G1的回收过程GC如何调优 ......
  • 2023-2024-1 学号:20231310《计算机基础与程序设计》第7周学习总结
    作业信息这个作业属于哪个课程<班级的链接>https://www.cnblogs.com/rocedu/p/9577842.html#WEEK01这个作业要求在哪里<作业要求的链接>https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP/homework/12754这个作业的目标<自学教材计算机科学概论第8章并完成......
  • Web漏洞-XSS实验-pikachu靶场5个场景(二)
    ★★实战前置声明★★文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。1、前言上一篇《Web漏洞-XSS理论和靶场小试牛刀(一)》已经介绍了XSS一些理论知识点,本文主要是分享p......
  • 每日总结2023年11月12日
    今天跟着网上小老师的步骤在做一个springboot+vue的项目,但是在配置tomcat端口的时候遇到一个问题,就是在application.yml里面配置的8081端口号并没有生效,如下图 相信不少明眼的小伙伴已经看出我的问题所在了,没错,应该是server而不是service,而且还有一个重要的判断依据就是port:后......