努力提高编程效率。努力建立一个愚蠢的游戏来教自己,所以它就像一个RPG类型。
在主要内部:
String selection = "Warrior";
if(selection == "Warrior")
{
Warrior war = new Warrior();
characterCreation(player, war, 75, 200, "Black", 150, 90, 25);
}
只是为了创建一个通用字符:
private static void characterCreation(User player, Character type, int armour, int health, String colour, int height, int weight,
int damage) {
type.setType(type);
System.out.println("New "+ type.getType() +" Created!");
所以这个想法就是你可以创造一个战士,治疗师,巫师你得到的想法:)
Character.java
private Character type;
public Character getType() {
return type;
}
public void setType(Character type) {
this.type = type;
}
然后清空扩展Character类的Warrior.java类。
打印时获得的输出是新的com.game.config.Warrior@6471d768已创建!
我在这里做错了什么?
谢谢!
答案 0 :(得分:3)
为您的类提供一个有意义的可行public String toString()
方法 - 返回描述当前对象及其状态的String。这将解决您的“com.game.config.Warrior@6471d768”问题,因为您所看到的是从对象的toString()
方法返回的默认字符串。
答案 1 :(得分:2)
不要使用selection == "Warrior"
使用selection.equals("Warrior")
==用于比较参考而不是对象的值