public class Star5 { String t=new String("成功拉"); public String dayin() { return t; } public static void main(String args[]) { String t = new Star5().dayin(); System.out.println(t); } }
为什么要 String t= new Star5().dayin();呢 直接用new Star5().dayin();不是已经调用了dayin()了吗?为什么没有返回t?
为什么要 String t= new Star5().dayin();呢 直接用new Star5().dayin();不是已经调用了dayin()了吗?为什么没有返回t?那位大哥帮忙解释一下。
改成这样后打印成功了
public class Star5
{ static String t=new String("成功拉");
public String dayin()
{
return t;
}
public static void main(String args[])
{ new Star5().dayin();
System.out.println(t);
}
}
但是t必须声名为静态变量才行,如果不声名为static还是不能打印
但是声明为static后即使不调用dayin()也能打印出来,与我的本意相背愿意是main()调用dayin()后返回t,应该怎么写这个程序。
再次谢谢楼上各位解答。
要不就把整个扔到println里面去!
就是
public static void main(String args[])
{
System.out.println(new Star5().dayin());
}
{ String t=new String("成功拉");
public String dayin()
{
return t;
} public static void main(String args[])
{ String t = new Star5().dayin();
System.out.println(t);
}
}
直接用new Star5().dayin();不是已经调用了dayin()了吗?为什么没有返回t?
直接用new Star5().dayin();不是已经调用了dayin()了吗?为什么没有返回t?那位大哥帮忙解释一下。
你去翻翻书!!!
你上面这种写法只会产生一个临时的对象!!
那个T是局部的~~除非你提到外面来做一个全局的!!
去看看书把~~~继承里面有说!!
如果真的要用你那种new star5().dayin()这样!!你要反在一个什么东西里面!!
比如打印!!象这样:system.out.println(new star5().dayin());