学习Java,值得你留意的问题(1)更名为《学习Java,容易被你忽略的小细节(1)》

  记得大二快要结束的时候,有个女孩子突然问我“你会Java吗,帮我做大作业好吗?” 实话说,那个女孩真的很漂亮,我当时也非常想帮她。但是我从来没有接触过Java,让我在短短的几天内完成Java程序设计课程的结业作业,真心伤不起啊。最后我没有答应她,也错失一次在她面前好好表现的机会,对此我曾经懊悔不止几个月。

  现在大三了,课程也少了许多,我终于有时间可以简简单单地看看Java了。

  其实在我看来,作为一名软件工程师没有必要需要对每一门编程语言都学到精通的地步。有时侯,只需要简简单单地了解一门编程语言的优缺点和适合的场景即可。至于语法规则做到大概了解,等到实际使用的时候再认真的学习就好了。

  现在闲话少说,接下来我就在这里向大家展示学习Java,容易被你忽略的小细节(1)。

  阅读下面代码段

public static int funtion(int x){
		System.out.println("The funtion has run successfully!");
		return x;
}

  这是一个返回值int类型的函数,非常的简单。

  常规的调用方法就当作处理一个值。

	public static void main(String[] args){
		int num = funtion(5);
                System.out.println(num);      
	}    

  但是请仔细阅读下面代码段

public class TestDemo1{
        public static int funtion(int x){
		System.out.println("The funtion has run successfully!");
		return x;
	}
	public static void main(String[] args){
		funtion(5);
	}
}

  运行结果:

学习Java,值得你留意的问题(1)更名为《学习Java,容易被你忽略的小细节(1)》

  我们可以看到funtion方法竟然成功的被调用了。(我原本以为这是一种错误语法呢!!!)

  学习Java,容易被你忽略的小细节(1):

  在Java中,返回值类型非void的方法也可以当作语句调用。这种情况下,调用函数简单地忽略了返回值。

  (ps:有博友问我,类似的函数调用在什么语言中会出错。实话说,这个问题我真没想过。我立刻尝试过C,C++等语言,发现真的没有语法错误,在这里我真心觉得自己才疏学浅。并且我还尝试问了一些同学,但是大多数同学都说“应该问语法错误吧?”。我希望所有和我一样对Java,C,C++语言函数调用机制掌握不是特别清晰的同学,能够对我这样丢脸的行为引以为戒,避免自己也犯错误。这样我写博客的目的就实现了。)

适用场景:

  在编写Java程序时,如果调用者对返回值不感兴趣,并且知道调用操作一定会成功的时候,既可使用上面调用方法。尽管如此,最好把油返回值的方法当作值调用,以避免程序出错。

  上面就是学习Java,容易被你忽略的小细节(1)。

  欢迎继续关注本博更多新鲜动向,博主QQ:2584451009,有什么建议和忠告欢迎评论或留言。