楼主太强了!!
居然一个hello world也可以这么多废话!!
建议楼主不要编程序了!
改行当销售一定不错!

解决方案 »

  1.   

    你可以往里面加任何属性呀?只要你喜欢。严格来讲,不应该在Human类里直接用new Human来创建对象。
    人类应由上帝来创建。但上帝又是由谁来创建? 所以static必须存在?
      

  2.   

    如果说要那样,也许这样更好,可是这样就不
    合适初学者了啊,K&R"发明"的Hello World
    应该越简洁越好啊,所以不是很赞同楼主的观点.
    //Main.java
    class Human
    {
      private String words;
      Human()
      {
        setwords("Not defined!");
      }  Human(String wordstosay)   
      {
        setwords(wordstosay);
      }  public void setwords(String wordstosay)
      {
        words=wordstosay;
      }  public void say()
      {
        System.out.println(words);
      }
    }public class Main
    {
      public static void main(String[] args)
      {
        Human tom=new Human("Hello world!");
        tom.say();
      }
    }
      

  3.   

    首先说谢谢楼主,毛主席是伟大,但我认为你比毛主席还伟大,
     我昨天刚开始学JAVA,都说 THINKING IN JAVA 这书不错,我就买了,可是看了半天有点云里雾里的,有点头晕,尤其是刚才,刚看完第二章,列题上说边个 HELLOW WORLD  我一看就傻了,我认为看完后,似乎还没进入编程的状态,就开始编,实在有点晕,
     我看了一下例题,唯一想不明白的就是为什么MAIN()函数要在类里面,可把我累坏了,可是看到你的解释,还是有点不懂,可能是我刚接触,需要时间来积累点东西,不过看到你说的这么详细,还是三只蛤蟆跳井,不懂,不懂,不懂啊
    谢谢楼主了!~~~~``
      

  4.   

    首先我想说楼主真的是个热心肠的人,CSDN缺少的也就是这样的热心人。其次(楼主的热心也感染了我)我想告诉那些入门者尤其是认为"OOP==支持OOP的语言"的初学者:
        面向对象程序设计是很多程序设计方法的一种,很多时候这种方法能够指导我们写出好的程序。现在很多人都在说"面向对象的程序设计语言",且不说这种提法是否合理,这个表述只能说明这种程序设计语言特别提供了一些机制以很好的支持OOP的程序设计。在我的理解,Java是一种很OOP的语言,因为它在很大程度上对OOP有很好的支持,但是如果没有好好理解OOP,就算你用Java,也不一定就能编出符合OOP思想的程序,或者说很好的利用了OOP带来的好处,所以Java不能和OOP画等号。说到目前Java教科书上经常见到的HelloWorld,其实它们的作者无非是想让Java学习者能够很快很清晰地了解基本的可执行Java程序的内容和结构,并且实际的看到效果,我想这就是他们的初衷吧。确实,这个例子怎么看也不够OOP,因为要让一个Java程序运行需要有入口点,就是那个public static void main(String[] args),而这个方法其实就是面向过程的。我想说我们用Java一样可以做面向过程的编程,利用static关键字。我怀疑现实中会不会有100%纯的OOP语言,至少Java不是。最后我想说,没有任何一种语言是万灵丹,它们各有所长,也各有用武之地,我个人不赞成对某种语言的宗教般的过度崇拜(包括楼主和我还有很多人都喜欢的Java,和我还有其他很多人,不排除楼主,都喜欢的C/C++,以及很多人可能会喜欢的其他语言)。
      

  5.   

    一个简单的JAVA入门程序引起这么热烈的讨论真的不错
    只有这样才能学到或是学好JAVA,或都是学什么也都应该有这样的精神
    UP
      

  6.   

    我认为楼主应该再加一个World类,去掉Human的public修饰符和main方法。
    public class World {
       static {
           System.out.println("世界诞生了!(其实是World类被加载了)");
       }
       
    // 任何人都无权创建一个新的世界
    private World() {}   public static void main(String[] args) {
           Human Tom = new Human();
           Tom.say();   
       }
    }