A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马龙超 中级黑马   /  2012-6-8 14:15  /  2665 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public static void Function(){}
public static void Function();
if(i>=0){}
if(i>=0);
有什么不同?

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

7 个回复

倒序浏览
没有什么不同的啊,只是写法不一样而已!
回复 使用道具 举报
我也是觉得没有什么不同!
回复 使用道具 举报
public static void Function(); 是函数声明,未定义
public static void Function(){}是函数定义,如果没有定义只是声明的话,是不能调用该函数的
至于
if(i>=0){}

if(i>=0);
在效果上并没有区别,但是具体编译器中是如何设定,就不了解了

点评

这个比较好  发表于 2012-6-9 11:02

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
public static void Function(){}--->这里是定义了方法,只是方法体是空的,什么也不做,但你却能掉用它。



public static void Function();--->这里是声明了一个方法,告诉编译器有这么一个方法,但是直到你完整的定义(给出函数标签和函数体)它后才能使用



if(i>=0){}这里有个复合语句{},只是复合语句里面是空的,什么也不做



if(i>=0);这里是个空语句,什么也没有,只是相当于非常短暂的等待,消耗时间而已,跟上面的语句是一样的效果,但是这里的执行效率比上面高,只是不明显,几乎没差别。

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

回复 使用道具 举报
基本没什么区别,就是形式不一样,还有执行的效率不一样,其结果是一样的

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
没什么不同,一样的
回复 使用道具 举报
public static void Function(){}--->这里是定义了一个空的方法体,可以正常调用这个方法;
public static void Function();--->这里是声明了一个方法,但是没有定义,也就不能正常调用;
if(i>=0){}这里是个空的复合语句{};

if(i>=0);这里是个空语句,后面没有内容,两者效果一样。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马