关于 Hello Java World 的理解(初心者向)

类别:Java 点击:0 评论:0 推荐:

    数个星期前,我由于工作需要开始学习 Java ,尽管已经有了 C++ 的功底,但学习 过程中还是把几个概念搞混了,比方说最简单的 Hello World 。  这个例子太简单了,以至于没有人愿意多讲关于这方面的基础知识以及与 C++ 的比较。 而且,就我所看到的 Hello World 例子没有一个是够全面完整的,下面姑且抖胆拿出我自己改写的一个 Hello World 例程,并说说自己的理解(写于注释处)。

     :)  尽管这个例子很简单,希望编辑能够给予通过,高手们也少踩几脚了。。。


// FileName:  HiJava1234.java

/*
 * 创建日期 2004-5-14
 * 该文件由 Eclipse Version 2.1.3 模板生成
 * 更改所生成文件模板为
 * 窗口 > 首选项 > Java > 代码生成 > 代码和注释
 */

/**
 * @author Administrator
 *
 * 更改所生成类型注释的模板为
 * 窗口 > 首选项 > Java > 代码生成 > 代码和注释
 */

 


class HiJava  // 很多教材都认为包含 main() 的类一定要声明为 public ,还要跟文件名同名,其实这里证明了并不是必须的(但仍建议使用)。
{
   public static void main(String[] args) // 猜测,被声明为 static 的方法实际上就是 C 的函数
  {
     System.out.println("it's in HiJava main();");

    // System.out.print("Objt.toString() = ");
    // System.out.println(hiJava.toString());
    // System.out.print("Objt.hashCode() = ");
    // System.out.println( hiJava.hashCode() );

     System.out.println();

     hiJava.getStatus();

  }
   // 这样,就算该类没有被初始化,一样可以使用里面的方法,但是,对成员的访问就不能随意了,除非那个成员一样是 static
   // 当然,由于不知道还有没有初始化,也不能用 this 来访问。  本来该 main 应该写在外面的,不过这里写在声明为 public
   // 的类里也没有错,因为这样的类在一个 .java 文件当中只允许出现一个。

   String  Title = "HiJava Sample";  // C++ 里不可以向成员赋初始值,这里则刚好相反


   HiJava(String inString)
  {
     System.out.println("HiJava init...");
     System.out.println(inString);
     System.out.println();
  }

   static HiJava  hiJava = new HiJava("Hi my JavaWorld.");  // 当然,如果要给成员赋初始值,则可能导致实例初始化
   // 上一句如果被注释掉,则会少了初始化信息的显示,但 main() 一样会执行。 也就是入口函数并不受它所在类是否被初始化影响
   // 换句话说,我认为被声明为 static 的方法实际上就是一个可以随时被执行的函数而已,尽管使用时要指定其名字域,
   // 就好像 System.out.println("abc"); 一样。


   goGoGo gogogo = new goGoGo(this);  // 在 Java 里面,因为没有声明与否之分,尽管这个类还没有被定义,已经可以在这里使用了

   void  doing() {  System.out.println("nothing but just confuse about !");  }

   int getStatus()
   {
      System.out.print("this.toString() = ");
      System.out.println(this.toString());
      System.out.print("this.hashCode() = ");
      System.out.println(this.hashCode());
      System.out.println(this.Title);
      System.out.println();
      this.doing();  // 在实例中则可以使用 this 来调用本类的成员了。
      // 不妨作个假设,如果 doing() 方法被定义为 static 的, this.doing() 的访问方式会给出警告信息
      return 1;
   }

}


class goGoGo
{
   java.lang.Object Owner;  // 指定拥有者的方式是从 C++ Builder 里学的
   goGoGo(java.lang.Object owner)
   {
      Owner = owner;
      doSomething();
      return;
   }
   void doSomething()
   {
      System.out.println("Why ??\n");
      System.out.print("Owner.class = ");
      System.out.println(Owner.getClass()+"\n");  // 使用该方法可以获得父对象的 class 类型
      return;
   }

}

 

后话

    另外,在选用编译环境的时候,我听从了朋友的劝告,使用了 Eclipse 。试用之后的感觉非常棒(参照物: J++Builder 9),因此这里也向初学者建议尝试一下。 不过,厄,当然,这是您的自由。 附上:Eclipse 2.1.3 安装中文语言支持的说明

        Title:   Eclipse 2.1.2.1 中文语言包安装 

·本安装说明节选自 CSDN 文章 《Eclipse插件开发系列(1):Eclipse及其语言包的下载与安装》

· Eclipse 的版本不一定是对应的 2.1.2 也可以是 2.1.3

· 安装中文语言支持包, 要下载下列文件。
     eclipse2.1.2.1-SDK-win32-LanguagePackFeature.zip
     如要下载,可参考: http://eclipse.cis.sinica.edu.tw/downloads/index.php
     解压缩后改名为 LanguagePack(2.x.x)  注意要保留里面的 eclipse 子目录内容完整,然后整个目录拷贝到

Eclipse 的主目录下

· 为了让开发环境认出语言开发包,要在 Eclipse 主目录下创建子目录 links ,links 下含文件language.link
    文本内容: path=LanguagePack(2.1.2) ,也就是刚才解压缩的目录名称。并重新启动 Eclipse 开发环境
   重新启动以后,开发环境提示需要安装的新特性,单击完成即可。

本文地址:http://com.8s8s.com/it/it16455.htm