免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1481 | 回复: 0
打印 上一主题 下一主题

Java基础 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-10-28 22:34 |只看该作者 |倒序浏览
Java诞生于1995年5月23号,JDK(Java Development Kits)1.0a2版本正式对外发布。

  Java的架构主要可以分为三部分:Java语法、Java执行环境、Java丰富的API。
  (1)Java语法:
  和C++类似,Java也是基于C发展起来的。Java改进了C++中的一些缺点,并增加了一些优点,让Java更简单、更易学、设计的程序更强大更健壮。
  Java去掉了C的指针,保证系统的安全和程序的健壮;Java也没有C常用的预处理器(preprocessor),类似#define、#ifdef、常量声明、#include都不能使用了,也没有了头文件(.h);Java也没有C++中的多重继承,不让对象和对象之间的关系变得复杂。
  Java新增了资源回收(Garbage Collection)、异常处理(Exception)、新修饰符(abstract/synchronized/native/final等),几乎都是为系统和程序的安全性考虑的。
  Java不论在何种平台上,基本数据类型的大小是不变的。
  (2)Java执行环境
  Java不像C语言,最后被编译成所在平台的机器语言后再执行,而是先编译成一个中立的字节码,然后到装有Java虚拟机(JavaVirtualMachine JVM)的硬件上执行,这也是Java程序能跨平台的主要原因。
  JVM目前已经有多种平台版本,例如Solaris、Linux、Windows、Macintosh等,还有针对小型系统设计的JVM,例如PDA、手机、JavaCard等等。
  整个Java执行环境统称为JRE(JavaRunningEnvironment),除了包括JVM之外,还有给浏览器使用的Java Plug-in。
  (3)Java API
  Java应用程序能够简单快速完成开发,又能在各种硬件平台上执行,最大的功臣就是那些量身定做的API,可以称之为类库,可以在java.sun.com/products/上查到。可以分为四类:基础平台套件、消费产品及嵌入式套件、辅助套件、其他套件。
  基础平台套件:该套件是必不可少的,即Java2Platform StandardEdition(J2SE)。它除了包括开发Java程序所需的基本类库之外,还有编译程序、辅助工具等。 除了J2SE,SUN还推出了针对企业级应用的Java2PlatformEnterpriseEdition(J2EE)和针对消费电子产品/嵌入式系统的Java2PlatformMicroEdition(J2ME)。J2EE除了J2SE中的基本类库,还包含了编写服务器端、分布式应用、事务处理等企业级应用的类库,例如Servlet、EnterpriseJavaBean等。J2ME是Java平台套件中最小的一个。 只有J2SE包含了编译Java程序所需的工具程序,而J2EE和J2ME只有类库和执行这类Java程序所需的JVM而已,所以就算只开发J2EE和J2ME程序,也需要J2SE的工具程序。
  消费产品及嵌入式系统套件:这部分和现在的J2ME有些重叠,如PersonalJava、EmbeddedJava等,因为J2ME是最近才集成起来的套件,所以有重复现象。后续Sun会将这部分集成到J2ME中,网站上看到的这部分套件都是旧版本,也不会再有新版本。
  辅助套件:使用J2SE的基本套件,开发简单的程序是足够的,但是要开发橡3D动画、多媒体程序等,就显得力不从心了,所以Sun设计了许多相关的类库,例如Java3D、多媒体的JMF、串并口通信的JavaCommunication、安全的JCE等,种类非常多。
  其他套件:JINI、JavaMessageQueue等,可以到网站上查询。

  Java的优点,大概总结如下:
(1)                  Write Once,Run anywhere。
(2)                  简单:纯面向对象的特性,众多类库支持。
(3)                  安全:绝大部分新增特性都是出于安全考虑的。
(4)                  Unicode:Java使用Unicode作为标准字符,使得程序在不同语言的平台下都能编写和执行,例如可以把程序中的变量、类名称用中文表示,在其他语言平台上照样可以运行(有些特殊符号不能使用,另外显示时,还得执行平台有能力显示其他语系的文字)。Java是目前唯一天生使用Unicode的电脑语言。
(5)                  网络:Java借助网络而重生,所以网络方面的套件很丰富,变成非常容易。
(6)                  资源回收GarbageCollection:JVM协助程序对内存做动态管理,编程是不必担心内存问题,而且内存的统一管理,对跨平台也有相当的帮助。
(7)                  异常处理Exception:让程序更安全、更稳定,不致于因为突发错误,造成执行中断或宕机,用户控制整个程序执行,使得程序更严谨。

JDK下载、安装和设定
  (1)JDK下载:
在java.sun.com或者
www.javasoft.com
上面,下载J2SE 5.0 SDK即可。
  (2)JDK安装:
下载的J2SE安装文件,名称应该是jdk-l_5_0_05-windows-i586-p.exe,直接执行这个程序即可。
  (3)环境变量设定:
首先新增一个系统变量JAVA_HOME,就是JDK的安装目录,例如c:\Program Files\Java\jdk1.5.0_05
  然后在系统变量PATH中,加上“;%JAVA_HOME%\bin”,以便在cmd下执行各种工具,例如javac。
  最后还要增加一个系统变量CLASSPATH,变量值为“.”即可。Java类分为三种:Bootstrap class(Java内建的类库,在jre/lib目录下)、Extension class(Java相关的类库,在jre/lib/ext目录下)、User class(用户自己设计的类库),前面两种类不需要CLASSPATH,使用“.”即可,而User class就需要通过CLASSPATH指定目录了。
  上面的工作完成之后,在cmd下面执行javac,看看是否成功了。

  Java说明文档
  当前JDK已经有超过2000个类,每个类少则十几种使用方式,多则几十种,不可能背下来,所以要有个文档随时查阅每个类的使用方法,最完整的文档就是Java2 Documention,其中最重要的是Java2 API Specification。
  在Sun网站上下载J2SE 5.0 Documentation,得到jdk1_5_0-doc.zip,解压即可。

  程序编辑工具
(1)       UltraEdit。
(2)       jEdit:
本身就是用Java打造的,功能不输给UltraEdit,而且有很多程序员为它量身定做的大量Plug-in,从而使它从一个文本编辑器变成强大的IDE。jEdit免费,而且开源。
  首页是
www.jedit.org
,可以下载该工具。
  jEdit的所有设定都在“Utilities”->“Global Options”中。“TextArea”中设定字体,如果要显示中文,要选择中文字体;“Gutter”中的“Line numbering”可以在编辑窗口显示行号。
  “Plugins”中的“Plugin Manager”可以对Plug-in进行安装、设定、启用、移除。

  第一个Java程序
  (1)源码编写:
  计算1+2+…+N的总和,一个最简单的Java Applet程序如下:
public class MyFirst extends java.applet.Applet  // 定义public class
{
    AddClass add;
   
    public static void main(String args[])
    {
        MyFirst mf = new MyFirst();
        
        mf.init();
    }
   
    public void init()
    {
        add = new AddClass(10);
        System.out.println( "1+2+...+10="+add.total() ); // 结果输出到命令行。
    }
   
    public void paint(java.awt.Graphics g) // 这个方法是给Applet显示界面使用的。
    {
        g.drawString( "1+2+...+10="+add.total(), 10, 20 );
    }
   
}

class AddClass
{
    int iN;
   
    public AddClass(int iN)
    {
        this.iN = iN;
    }
   
    public int total()
    {
        int i, sum;
        
        sum = 0;
        
        for(i = 1; i
        {
            sum += i;
        }
        
        return sum;
    }
}
注意两点:(1)源文件名字要和public class相同;(2)扩展名是.java,所以上面的文件应该保存为MyFirst.java;(3)Java区分大小写。
(2)编译
javac MyFirst.java
(3)执行
如果只是简单的在命令行上执行,那么java MyFirst即可,其中java就是J2SE附带的JVM程序。
如果要用JavaApplet的方式执行,那么要编写一个HTML文件,并保存为MyFirst.htm:
code = "MyFirst.class"
codebase= .
width= 100
height= 50
>
然后appletviewer MyFirst.htm即可,也可以直接用浏览器来执行。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/104271/showart_2081468.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP