dポイントプレゼントキャンペーン実施中!

最近JAVAも勉強し始めたのですが、VBのユーザー定義関数はプロシージャ名に代入しますが、JAVAのユーザー定義関数は何故プロシージャ名に代入しないのですか?

つまり

【VB】
Function プロシージャ名(引数1,引数2、・・・)
 プロシージャ名 = 処理内容
End Function

【JAVA】(型は省略しております)
プロシージャ名(引数1,引数2) {
変数 = 処理内容;
return 変数;
}

A 回答 (3件)

他の方も言っているように言語仕様だからというのが正しいのですが、


なぜそのようになったのか?と想像したときに、
VB自身が手探りのような仕様のためCライクな処理のポインタという感じで
プロシージャ名(ポインタ)に渡すというようになったんじゃないでしょうか?
一方、JAVAはオブジェクト指向という確固とした方向性があるため、
処理を戻すというイメージからこのような仕様になったのではないかと私個人は思っています。
    • good
    • 0

単なる言語仕様の差です。


戻り値も変数のひとつとみなす考え方。

pascalもこの書き方ですね。
    • good
    • 0

英語と日本語で全然違うように、プログラム言語も、それぞれに違います。



VBでは「関数名 = 戻り値」と記述する。
Javaでは「return 戻り値;」と記述する。

というように決めたからです。


なお、VB.netでは
Function プロシージャ名(引数1,引数2、・・・)
 return 戻り値
End Function
と記述することもできます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!