日期:2014-05-20  浏览次数:20693 次

菜鸟提个问题
这两个程序运行起来有区别吗?第二个程序是否正确?第二个程序在主方法里面只有一个new   constructor();这是什么意思啊?谢谢

第一个:
public   class   constructor   {
public   static   void   main(String[]   args)   {
      System.out.println( "Hello   world ");

}
}

第二个:
public   class   constructor   {

void   output(){
System.out.println( "Hello   world ");
}
public   static   void   main(String[]   args)   {
  new   constructor();
}

}


------解决方案--------------------
第一个程序会输出一句话Hello world,第二个程序什么也没有
new constructor(); 只是产生了一个constructor的实例而且没指向它的引用,如果想输出hello world 可以改成 new constructor().output();
------解决方案--------------------
第一个:
public class constructor {
public static void main(String[] args) { //main函数,主体函数
System.out.println( "Hello world "); //打印 “Hello world”

}
}

第二个:
public class constructor {

void output(){ // 无返回值的方法 output()
System.out.println( "Hello world "); //打印“Hello world”
}
public static void main(String[] args) {
new constructor(); //创建一个新的 constructor 对象
}

}

希望上面的注释可以帮助楼主

------解决方案--------------------
第一个:在主函数里执行打印语句
public class constructor {
public static void main(String[] args) {
System.out.println( "Hello world ");

}
}

第二个:把打印语句写在output方法里,
然后可以在主函数里创建实例,调用实例方法
像下面这样实现和第一个程序一样的功能
public class constructor {

void output(){
System.out.println( "Hello world ");
}
public static void main(String[] args) {
new constructor().output();
}

}

------解决方案--------------------
如果第2段代码这样写就和第1段没区别了.
public class constructor {

public constructor(){
System.out.println( "Hello world ");
}
public static void main(String[] args) {
new constructor().output();
}

}