我需要一些帮助,使用javac编译一个简单的java程序。
所以我有这两个文件是由老师给我的:
Robot.java
class Robot {
String name;
int numLegs;
float powerLevel;
Robot(String name) {
this.name = name;
numLegs = 2;
powerLevel = 2.0f;
}
Robot() {
this(Standard Model);
}
void talk(String phrase) {
if (powerLevel = 1.0f) {
System.out.println(name + says + phrase);
powerLevel -= 1.0f;
} else {
System.out.println(name + is too weak to talk.);
}
}
void charge(float amount) {
System.out.println(name + charges.);
powerLevel = powerLevel + amount;
}
}
RobotWorld.java
class RobotWorld {
public static void main (String[] args) {
Robot c3po = new Robot("C3PO");
c3po.talk("'Hello, Java!'");
}
}
当我尝试通过在命令提示符下键入“javac RobotWorld.java”来编译它时,它只返回一堆错误。我怎样才能解决这个问题?我安装了JDK 8。
答案 0 :(得分:2)
看起来所有的双引号字符都被删除了。我还在“powerLevel =”之后添加了另一个等号。试试这个:
class Robot {
String name;
int numLegs;
float powerLevel;
Robot(String name) {
this.name = name;
numLegs = 2;
powerLevel = 2.0f;
}
Robot() {
this("Standard Model");
}
void talk(String phrase) {
if (powerLevel == 1.0f) {
System.out.println(name + " says " + phrase);
powerLevel -= 1.0f;
} else {
System.out.println(name + " is too weak to talk.");
}
}
void charge(float amount) {
System.out.println(name + "charges.");
powerLevel = powerLevel + amount;
}
}
节目输出为:C3PO太弱而无法说话。
答案 1 :(得分:1)
是的,你错过了字符串的双引号“”。 此外,标准模型代表什么?
看起来您打算让默认构造函数使用参数调用构造函数,机器人名称为“Standard Model”?