黑马程序员技术交流社区

标题: 学习中遇到一个问题,小白一个, [打印本页]

作者: 贾俊锋    时间: 2014-5-3 02:42
标题: 学习中遇到一个问题,小白一个,
  1. class Demo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int        a = 3,b = 5;
  6.                 System.out.println("a="+b+",b="+a);
  7.         }
  8.         {
  9.                 int a = 3,b;
  10.                 if(a>1)
  11.                         b = 100;
  12.                 else
  13.                         b = 200;
  14.                 System.out.println("b="+b);
  15.         }
  16. }
复制代码


运行结果为a=5,b=3
为什么不运行第二个代码块,刚开始学,小白一个,希望不要笑话我,:P
作者: WO.瘾姓埋銘    时间: 2014-5-3 04:24
第一个main方法,是类的主方法,当你运行这个类时,java虚拟机会直接找main方法并从mian方法开始运行,一个类只能有一个main方法
第二个为代码块,当你new这个类时就会运行,有点像构造方法.
作者: 姜蕾蕾    时间: 2014-5-3 07:15
任何类都是运行主函数,如果要运行其他的代码块,必须在主函数有调用,你这个代码块不在主函数里,有没有被调用,当然不会运行了……
作者: 贾俊锋    时间: 2014-5-3 08:57
姜蕾蕾 发表于 2014-5-3 07:15
任何类都是运行主函数,如果要运行其他的代码块,必须在主函数有调用,你这个代码块不在主函数里,有没有被 ...

谢谢了哈,问题解决了,:lol
作者: \(^o^)/    时间: 2014-5-3 09:30
大哥,你第二个都没定义函数,连java的基本语法都没弄明白。。。
作者: 贾俊锋    时间: 2014-5-3 09:56
WO.瘾姓埋銘 发表于 2014-5-3 04:24
第一个main方法,是类的主方法,当你运行这个类时,java虚拟机会直接找main方法并从mian方法开始运行,一个类只 ...

谢谢你,问题解决了,长知识了
作者: 贾俊锋    时间: 2014-5-3 09:57
\(^o^)/ 发表于 2014-5-3 09:30
大哥,你第二个都没定义函数,连java的基本语法都没弄明白。。。

好吧,我错了,我再学习学习,
作者: 寻找人生目标    时间: 2014-5-3 11:26
main是入口   jvm先加载main主函数
作者: 蒋大帅    时间: 2014-5-3 15:37
第二个代码块不在主函数里面
作者: 张旭峰    时间: 2014-5-3 17:00
构造代码块是new对象的时候先于构造函数执行。这压根没执行到。
作者: 贾俊锋    时间: 2014-5-3 20:00
蒋大帅 发表于 2014-5-3 15:37
第二个代码块不在主函数里面

嗯哪,看见了,这个问题好像问的有点白痴,:shutup:
作者: 蔡先苼    时间: 2014-5-5 22:23
第二个大括号里面的代码块不在main方法里面,所以不会运行啊!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2