java类里的初始化块

一直努力着 2012-09-14 02:38:37
class Person{
{
int a = 8;
if ( a > 7){
System.out.println("a大于 7");
}
System.out.println("a小于7");
}
{
System.out.println("a的初始化块");
}
}



public class PersonTest{

public static void main(String[] args) {
Person p1 = new Person();
}
}
后面为什么还会“输出a小于7”呢?if语句后面不是隐藏else语句嘛(还是我理解错啦)?虽然初始化块一定要执行。求指导呀,大侠们。
...全文
127 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
rockets311 2012-09-14
  • 打赏
  • 举报
回复
我小时候也这么迷糊过,楼主加油!
zhaoming262350 2012-09-14
  • 打赏
  • 举报
回复
if与else像兄弟一样,是不能分离的 你理解错了
yktd26 2012-09-14
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
if语句后面不是隐藏else语句嘛(还是我理解错啦)
[/Quote]

你理解错了
li418418qq 2012-09-14
  • 打赏
  • 举报
回复
if ( a > 7)
System.out.println("a大于 7");
else
System.out.println("a小于7");
haorengoodman 2012-09-14
  • 打赏
  • 举报
回复
你理解错了
xiars123 2012-09-14
  • 打赏
  • 举报
回复
System.out.println("a小于7");
这一行跟你的if块没有半毛钱关系,除非你写到else块里。
龙四 2012-09-14
  • 打赏
  • 举报
回复
“if语句后面不是隐藏else语句”,哪个老师哪本书告诉你的?

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧