爪哇:
为什么一个名为void
的方法(即它没有返回任何东西)如果它返回这个:
System.out.println("Something");
例如:
public static void sayHello() {
System.out.println("Hello");
}
确实会返回一些内容,这条消息!
答案 0 :(得分:3)
我会说它会向标准输出打印一条消息,但它不会向调用语句返回任何内容。
答案 1 :(得分:1)
此方法确实某些内容(打印" Hello"),但它不会返回任何内容。如果它返回了一个值,您就可以执行此操作:
aVariableToAssignReturnValue = sayHello(); //you can't do it!
例如,阅读this。
答案 2 :(得分:1)
考虑这两个例程。
public void sayHello() { System.out.println("Hello"); }
public int giveANumber() { System.out.println("Hi"); return 42; }
你怎么称呼他们?
sayHello();
int i = giveANumber();
由于sayHello无效,因此当您调用它时,左侧没有等号,也没有任何内容。但是,由于giveANumber返回一个int,您应该使用等号和整数来调用它以接收左侧的值。
答案 3 :(得分:1)
在编程语言历史中,有Algol68,可能是最好的程序语言。这是第一个完全定义的语言,所有内容都是打字的。可以这么说和表达语言。
其中VOID是具有单值SKIP的类型。 PROC()VOID,一种方法,可以被强制转换为VOID,进行呼叫。
答案 4 :(得分:0)
它不会返回任何可以存储在变量中。
所以它根本就不会返回任何东西。
但它可以执行打印到控制台之类的操作。
答案 5 :(得分:0)
"返回"在这种情况下意味着一个值通过堆栈传回,可以分配给调用代码中的变量。在你的例子中并非如此。
Object o = sayHello(); // WRONG - Compile error
void方法可以做的事情 - 在你的情况下打印到屏幕。这不是"返回"在这里描述的这些。
由于问题在页面顶部显示为" Java Void Methods Return"有资本" V" on" Void"值得注意的是,Java有一个类" Void"除了关键字" void。"声明返回Void的方法会返回一些东西 - 但如果这是你的情况,你应该查看该类的文档,因为它是一种特殊情况。
答案 6 :(得分:0)
这很简单直接,因为你要求他执行一些不返回的东西。你的方法返回一个没有任何意义的void。作为一名c程序员,在C中,一个不返回任何内容的方法称为过程。更多结帐What is the difference between a "function" and a "procedure"?。
答案 7 :(得分:0)
sayHello()
没有退货声明;因此,它是void
方法。根据您的假设,唯一真正的void
方法看起来像这样:public static void wowSuchVoid(){ }
。什么是重点?