【发布时间】:2012-02-20 00:27:52
【问题描述】:
聊天机器人类:
聊天机器人是一种计算机程序,旨在模拟与一个或多个人类的智能对话。在本实验中,我们将为我们的聊天机器人建立框架,并将在整个学期中得到增强。
ChatBot 类将定义一个用于标识聊天机器人的名称字段(为您的聊天机器人命名任何您喜欢的名称。)这将是一个不可变字段; name 字段只需要一个访问器方法。 name 字段应该在默认构造函数中设置。
ChatBot 类定义了两个附加方法,一个返回包含聊天机器人名称的介绍性消息。另一个接受一个字符串并产生一个字符串回复。在这个时间点,reply 方法总是返回相同的消息。
这就是 UML 图的样子
聊天机器人(类或构造函数)
减号(-私有)名称:字符串
加号 (+ public) getName() : 字符串
加号 (+ public) introbot() : 字符串
加号(+公开)公开回复(用户输入:字符串):字符串
聊天机器人客户端:
客户端应用程序将管理最终用户和聊天机器人之间的聊天。客户端负责检索最终用户的评论,将其传递给聊天机器人,并检索和显示聊天机器人的响应。用户或聊天机器人的名称应用作输入提示。下面是客户端的示例运行:
输入您的姓名:杰夫
嗨!我叫静音机器人
杰夫>你好
mutebot > 我只是在学习说话
这是我的服务类
/*
* Java Car service class
* @author blake
* 2/13/2012
*/
public class Chatbot
{
private final String name;
private String introbot;
private String reply;
public Chatbot(String newName, String newIntrobot, String newReply)
{
name = newName;
}
public String getName()
{
return name;
}
}
这是我的应用类
import java.util.Scanner;
public class ChatbotClient
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println("What is your name? ");
String name = input.nextLine();
System.out.println("\nHi " + name + " My name is copbot");
System.out.println(name);
String reply = input.nextLine();
System.out.println("/ncopbot" + "I'm just learning how to talk " );
}
}
我不确定这是否正是问题所要求或要求的,或者这是否是解决问题的方法。
我认为服务类可能没问题,但我不太确定应用程序类,因为您将在其中执行访问器、修改器和诸如此类的事情,我猜您只是设置了字段和实例在服务类中。
【问题讨论】: