我想创建我自己的类,类似于我可以像这样使用的String类,如何在java中分配一个值?
MyClass mc =“testvalue”;
我很困惑如何做到这一点,在哪里将“testvalue”分配给?
谢谢。
我想创建我自己的类,类似于我可以像这样使用的String类,如何在java中分配一个值?
MyClass mc =“testvalue”;
我很困惑如何做到这一点,在哪里将“testvalue”分配给?
谢谢。
MyClass mc="testvalue";
这是不可能的,不管MyClass是什么。 "testvalue"
是一个字符串文字,而String是最后一个类(不能被扩展)。因此,上述构造不能用Java编译。
MyClass mc="testvalue";
这里的值是"testvalue"
这是字符串,你试图把它分配给一个引用变量。这是不允许的,mc
假定持有至的MyClass
一个对象的引用(或它的亚型)
可以将其分配给String
的参考,例如
String str ="testValue";
的常见方法在Java中的类存储值是创建成员变量的类,使用get/set方法读取/他们/写:
class YourClass{
private String value;
public YourClass(String value){
// Constructor
this.value = value;
}
public String getValue(){
return value;
}
public void setValue(String new_value){
this.value = new_value;
}
}
所以,你可以做这样的事情:
YourClass yc = new YourClass("Your Value");
yc.getValue(); // Returns your Value
vc.setValue("A new Value"); // Sets your Value
我认为你的意思是* member *变量,而不是* global *变量。 – 2011-05-12 16:03:51
对不起,纠正了这一点。 – 2011-05-12 16:10:16
由于Java既不支持隐式转换,也不支持运算符重载,所以您需要实现构造函数或采用该字符串的静态工厂方法。
您也可以使用预处理器路线来创建语言变体,但这完全是其他球类游戏。
这个问题还不清楚。 – Bozho 2011-05-12 15:58:53
你将不得不更好地定义你想要做什么 – amit 2011-05-12 15:58:57