JAVA6新特性介绍

合集下载

Java 6 Update 10 功能

Java 6 Update 10 功能

优化的自动更新功能
此外,还使用 patch-in-place(修补到位)机制改进了 Java 自动更新机制,从而实现更快速、更可靠的更新过程(修补到位机制适用于 Java 6u10 及以后版本的最终用户,可把 Java 升级到更高的版本)。将来的更新版本将安装现有的版本,同时删除以前的版本。每个更新版本将不再在 Windows 的“添加或删除程序”对话框中列为单独的项目,因而减少了磁盘占用空间。
更高的性能
Java Quick Starter 功能可将 Java 部分预载到内存中,大幅度缩短了平均冷启动时间(在 PC 重新启动后首次启动 Java 应用程序所需的时间)。
硬件加速支持
全新的、基于 Microsoft Direct3D 9 API 的硬件加速图形管道实现更佳的 Swing 应用程序渲染性能,具体取决于半透明性、梯度、随机转换和其它更多的高级 2D 操作。
装程序让 Java 用户在第一时间快速运行 Applet 和 Java Web Start 应用程序,而无需等到整个 Java 平台下载完毕。Kernel 安装有望满足大多数 Java Applet 和应用程序的要求,并可根据需要在运行期间下载一些额外的库以完成 Java Kernel 安装。此安装机制可使最终用户非常快速地启动和运行,同时可在后台完成 Java 平台安装。有关详细信息,请参阅 Java Kernel 常见问题。
全新的跨平台 Swing 外观,代码名称 Nimbus,提供现有的功能,并在 "Metal" 和 "Ocean" 上提供完美的更新。
下一代 Java Plug-in
Java 6u10 包括全新的 Java Plug-in 实施。只要您使用 Firefox 3 或 Internet Explorer,就会使用它(缺省设置)。下一代 Plug-in 通过一个或多个独立的进程在浏览器的外部运行 Applet 程序。同以往一样,Applet 程序仍显示在 Web 浏览器窗口的内部,但这意味着可以使用不同的 Java 版本、命令行参数和配置来运行不同的 Applet 程序。通过在独立的进程空间中运行 Web 浏览器和 Java — 两个非常大、非常复杂的软件部分,可以起到隔离的效果,这将改善两者的可靠性,同时也给予 Applet 程序相同的灵活性和对配置的控制,这正是其他 Java 软件一直渴望实现的目标。

Java 6新特性

Java 6新特性

SPOTO IT 人才培训机构 SPOTO CCIE 实验室 SPOTO BOOTCAMP IT 专家集训营 雏鹰部落 —— IT 初学者的部落 web: bbs: 以伙伴关系帮助客户成功,帮助员工成功,帮助合作伙伴成功。 —— 我们共创未来 !
Service Professional Outstanding Teamwork Obtain public void actionPerformed(ActionEvent e) { openBrowser("/lj"); } }); MenuItem sendMail = new MenuItem("Send Mail to me"); sendMail.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { sendMail("mailto:lj@"); } }); MenuItem edit = new MenuItem("Edit Text File"); sendMail.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { edit(); } }); MenuItem exitMenu = new MenuItem("&Exit"); exitMenu.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); pm.add(openBrowser); pm.add(sendMail); pm.add(edit); pm.addSeparator(); pm.add(exitMenu); } } 如果在 Windows 中运行该程序,可以看到在系统托盘区有一个图标,右击该图标会弹出一个菜单,点击 Open My Blog 会打开 IE, 并浏览"/lj";点击 Send Mail to me 会打开 Outlook Express 给我发邮件;点击 Edit Text File 会打开记事 本编辑在程序中创建的文件 test.txt JDK6 的新特性之二:使用 JAXB2 来实现对象与 XML 之间的映射 JAXB 是 Java Architecture for XML Binding 的缩写,可以将一个 Java 对象转变成为 XML 格式,反之亦然。我们把对象与关 系数据库之间的映射称为 ORM, 其实也可以把对象与 XML 之间的映射称为 OXM(Object XML Mapping). 原来 JAXB 是 Java EE 的一部分,在 JDK6 中,SUN 将其放到了 Java SE 中,这也是 SUN 的一贯做法。JDK6 中自带的这个 JAXB 版本是 2.0, 比 起 1.0(JSR 31)来,JAXB2(JSR 222)用 JDK5 的新特性 Annotation 来标识要作绑定的类和属性等,这就极大简化了开发的工

java2实用教程第六版知识点汇总

java2实用教程第六版知识点汇总

Java2实用教程第六版知识点汇总1.引言本文档旨在对Ja va2实用教程第六版涉及的主要知识点进行全面的汇总和总结。

通过学习该教程,读者将能够全面掌握Ja va2编程的核心概念和技巧,为日后的J av a开发工作打下坚实的基础。

2.数据类型J a va2实用教程第六版详细介绍了Ja va中的各种数据类型及其使用方法。

以下是一些关键的知识点:2.1基本数据类型J a va的基本数据类型包括整型、浮点型、字符型和布尔型。

本教程提供了详细的介绍和示例代码,帮助读者理解这些数据类型的特点和用法。

2.2引用数据类型除了基本数据类型外,J av a还提供了多种引用数据类型,如数组、类、接口等。

教程中的例子演示了如何声明和使用这些引用数据类型,帮助读者熟悉它们的基本概念和操作。

3.控制流程控制流程是编程中的重要概念,决定了程序的执行顺序和逻辑。

J a va2实用教程第六版涵盖了常见的控制流程语句,包括条件语句和循环语句。

3.1条件语句条件语句用于根据条件的真假来选择性地执行不同的代码块。

本教程提供了i f语句、swi t ch语句等条件语句的详细说明和示例,让读者明白如何正确运用它们。

3.2循环语句循环语句用于重复执行某段代码,直到满足退出条件为止。

Ja v a2实用教程第六版介绍了三种循环语句:f or循环、w hi le循环和d o-wh il e循环。

读者将学会如何正确选择和使用不同类型的循环语句,以解决各种实际问题。

4.类与对象面向对象编程是J ava的核心思想之一。

J a va2实用教程第六版详细讲解了类与对象的概念、属性和方法的定义与使用等内容。

4.1类的定义与使用教程中提供了清晰的例子,介绍了如何定义类、声明对象、调用类的方法等操作。

读者将了解到如何通过类和对象来构建复杂的应用程序。

4.2构造方法与析构方法构造方法用于在创建对象时进行初始化操作,而析构方法则在对象销毁时执行清理工作。

本教程详细说明了构造方法和析构方法的特点和使用方法,帮助读者正确地管理对象的生命周期。

Java从入门到精通(第6版)

Java从入门到精通(第6版)

第16章反射与注解
16.1反射 16.2 Annotation注解功能 16.3实践与练习
第17章数据库操作
17.1数据库基础 17.2 JDBC概述 17.3 JDBC中常用的类和接口 17.4数据库操作 17.5实践与练习
第18章 Swing程序设计
18.1 Swing概述 18.2 Swing常用窗体 18.3常用布局管理器 18.4常用面板 18.5文字标签组件与图标 18.6按钮组件 18.7列表组件 18.8文本组件 18.9表格组件
第19章 Java绘图
19.1 Java绘图类 19.2绘制图形 19.3绘图颜色与画笔属性 19.4绘制文本 19.5显示图片 19.6图像处理 19.7实践与练习
第20章多线程
20.1线程简介 20.2创建线程 20.3线程的生命周期 20.4操作线程的方法 20.5线程的优先级 20.6线程同步 20.7实践与练习
Java从入门到精通(第6版)
读书笔记模板
01 思维导图
03 读书笔记 05 目录分析
目录
02 内容摘要 04 精彩摘录 06 作者介绍
思维导图
本书关键字分析思维导图
语言
实例
实践 类
数据库
对象
概述
第版

程序 设计
基础
注释
第章
接口
方法
类型
结构
文本
内容摘要
内容摘要
《Java从入门到精通(第6版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细讲解了 使用Java语言进行程序开发需要掌握的知识。全书分为23章,内容包括初识Java,熟悉Eclipse开发工具,Java 语言基础,流程控制,数组,类和对象,继承、多态、抽象类与接口,包和内部类,异常处理,字符串,常用类 库,集合类,枚举类型与泛型,lambda表达式与流处理,I/O(输入/输出),反射与注释,数据库操作,Swing 程序设计,Java绘图,多线程,网络通信,奔跑吧小恐龙,MR人脸识别打卡系统。书中所有知识都结合具体实例 进行讲解,涉及的程序代码都给出了详细的注释,可以使读者轻松领会Java程序开发的精髓,快速提高开发技能。

Java有哪几个关键特性-简单性的特点-新特性

Java有哪几个关键特性-简单性的特点-新特性

Java有哪几个关键特性-简单性的特点-新特性Java〔编程〕语言的常见关键特性有这些:一是简洁有效,其是一种相当简洁的“面向对象〞程序〔制定〕语言;二是可移植性,能够同时在Windows、MacOS、UNIX等平台上运行。

以下是关于〔java〕有哪几个关键特性的具体介绍。

一、Java有哪几个关键特性(1)简洁有效Java语言是一种相当简洁的“面向对象〞程序制定语言。

Java 语言省略了C++语言中所有的难以理解、容易混淆的特性,例如头文件、指针、结构、单元、运算符重载、虚拟基础类等。

它更加严谨、简洁。

(2)可移植性关于一个程序员而言,写出来的程序如果不必须修改就能够同时在Windows、MacOS、UNIX等平台上运行。

使用Java语言编写的程序,只要做较少的修改,甚至有时根本不必须修改,就可以在不同平台上运行了。

二、Java简单性的特点1、语法规则和C++类似。

从某种意义上讲,Java语言是由C和C++语言转变而来,所以C++程序制定人员可以很容易地掌握Java语言的语法。

2、Java语言对C++进行了简化和提升,例如,Java使用接口取代了多重继承,并取消了指针,因为指针和多重继承通常会使程序变得复杂。

Java语言还实现了垃圾自动收集功能,这大大简化了程序制定人员的资源释放〔管理〕工作。

3、Java提供了丰富的类库、API文档、第三方开发包,以及大量的基于Java的开源项目。

现在JDK也开放源代码了,通过分析项目的源代码来提升自己的编程水平。

三、Java语言新特性(1)提供了对内存的自动管理,程序员无须在程序中进行分配、释放内存,那些可怕的内存分配错误不会再打搅制定者了。

(2)去除了C++语言中的令人费解、容易出错的“指针〞,用其他方法进行弥补。

(3)避免了赋值语句(如a=3)与逻辑运算语句(如a==3)的混淆。

(4)取消了多重继承这一复杂的概念。

Java编程知识总结

Java编程知识总结

Java编程知识总结Java是一种面向对象的编程语言,在当今的编程界具有重要的地位。

它具有简单易学、跨平台、丰富的库以及广泛的应用领域等优点,因此备受广大程序员的欢迎。

本文将总结Java编程知识,包含Java的基础知识、高级特性、开发工具和经验分享等方面的内容。

一、Java基础知识Java的基础知识包括语法、数据类型、流程控制、方法、数组等方面。

1.语法Java的语法与C++和C有很多相似之处,但也有许多不同之处。

Java的代码都是以类的形式组织,而在类内则是由方法来组成。

Java的语法比较严谨,对于代码格式有较高的要求。

例如,Java中要求每一个语句以分号结尾。

另外,在Java中,大小写具有区别性。

2.数据类型Java的数据类型与C++和C的数据类型类似,主要包括基本数据类型和引用数据类型。

Java的基本数据类型有byte、short、int、long、float、double、char和boolean等八种,其中char和boolean类型的变量必须进行初始化。

Java的引用数据类型包括数组、类、接口和枚举等。

3.流程控制Java中的流程控制主要有分支结构和循环结构两种。

其中,Java的if、else和switch等分支结构与C++和C的分支结构类似,但Java中的循环结构使用更加灵活,包括for、while、do-while等循环语句。

4.方法Java中的方法是一种封装代码的方式,也是Java中最基本的组织方式。

方法可以接受参数和返回值,可以在其他方法内部或外部被调用。

Java方法的定义形式为“访问修饰符返回值类型方法名(参数类型参数名)”。

5.数组Java中的数组是一种引用数据类型,可以存储多个相同数据类型的值。

Java中的数组可以被初始化并赋予初值,数组的下标从0开始。

Java中使用数组的方式与C++和C的方式类似。

二、Java高级特性Java的高级特性包括多线程、反射、注解和泛型等方面。

Java基础知识总结(超详细整理)

Java基础知识总结(超详细整理)

Java基础知识总结(超详细整理)Java语⾔的特点1.⾯向对象⾯向对象(OOP)就是Java语⾔的基础,也是Java语⾔的重要特性。

⾯向对象的概念:⽣活中的⼀切事物都可以被称之为对象,⽣活中随处可见的事物就是⼀个对象,我们可以将这些事物的状态特征(属性)以及⾏为特征(⽅法)提取并出来,并以固定的形式表⽰。

2.简单好⽤Java语⾔是由C和C++演变⽽来的,它省略了C语⾔中所有的难以理解、容易混淆的特性(⽐如指针),变得更加严谨、简洁、易使⽤。

3.健壮性Java的安全检查机制,将许多程序中的错误扼杀在摇蓝之中。

另外,在Java语⾔中还具备了许多保证程序稳定、健壮的特性(强类型机制、异常处理、垃圾的⾃动收集等),有效地减少了错误,使得Java应⽤程序更加健壮。

4.安全性Java通常被⽤在⽹络环境中,为此,Java提供了⼀个安全机制以防恶意代码的攻击,从⽽可以提⾼系统的安全性。

5.平台⽆关性Java平台⽆关性由Java 虚拟机实现,Java软件可以不受计算机硬件和操作系统的约束⽽在任意计算机环境下正常运⾏。

6.⽀持多线程在C++ 语⾔没有内置的多线程机制,因此必须调⽤操作系统的多线程功能来进⾏多线程程序设计,⽽ Java 语⾔却提供了多线程⽀持。

多线程机制使应⽤程序在同⼀时间并⾏执⾏多项任务,该机制使得程序能够具有更好的交互性、实时性。

7.分布式(⽀持⽹络编程)Java语⾔具有强⼤的、易于使⽤的⽹络能⼒,⾮常适合开发分布式计算的程序。

java中提供了⽹络应⽤编程接⼝(),使得我们可以通过URL、Socket等远程访问对象。

8.编译与解释共存Java语法基础标识符: ⽤来标识类名、对象名、变量名、⽅法名、类型名、数组名、⽂件名的有效字符序列。

合法的标识符:由字母、数字、下划线“_”、美元符号“$”或者“¥”组成,并且⾸字符不能是数字。

不能把java关键字和保留字作为标识符。

标识符对⼤⼩写敏感。

关键字:Java语⾔中已经赋予了特定含义的保留字: const、goto,Java版本中尚未使⽤,但以后版本可能会作为关键字使⽤变量:程序运⾏期间可以被改变的量。

java概述

java概述

java概述Java概述Java是一种面向对象的编程语言,由Sun Microsystems于1995年发布。

它是一种计算机编程语言,具有抽象、多态、封装、继承和动态绑定等特性,以及分布式、垃圾回收和内存管理等功能。

Java语言与C++相似,但更加安全、可移植性强、具有自动内存管理机制。

Java语言使用虚拟机(JVM)作为计算机运行代码的工具,它可以在不同的平台上运行,也称为跨平台语言。

Java语言的发展历史可以追溯到20世纪80年代,当时有一家叫做“Oak”的公司,它发明了一种新的编程语言,叫做“Oak”。

1996年,Sun公司将Oak重新命名为“Java”,并在1997年推出了“Java 1.0”版本。

随着Java的发展,它迅速成为一种流行的编程语言,并被广泛应用于企业系统和个人计算机中。

Java语言基于对象,这意味着程序以对象的形式组织,允许开发人员将复杂的问题分解成一系列更小的子问题,然后分别处理这些子问题。

通过这种方式,程序员可以更加有效地开发复杂的大型程序。

此外,Java语言支持网络编程,使开发人员可以访问Internet上的资源,从而帮助他们更快地开发分布式应用程序。

Java语言也包含一些内置类,这些类提供了丰富的功能,可以帮助开发人员更轻松地完成任务。

例如,Java有一系列标准类库,这些类库提供了一些基本的功能,如数学、字符串处理、文件操作等。

此外,Java还有一系列图形用户界面(GUI)类,它们可以帮助开发人员更加轻松地创建出美观的用户界面。

此外,Java还提供了一个安全的运行环境,可以防止恶意程序的运行,保护用户的数据安全。

它的安全性主要取决于Java虚拟机(JVM),它是一个独立的软件环境,可以在不影响系统性能的情况下运行Java程序。

它可以在不同的操作系统之间运行,并且可以防止恶意软件的运行。

总而言之,Java语言具有强大的跨平台性能、安全性、可移植性和可扩展性等特点,是一种流行的面向对象编程语言。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JAVA6新特性介绍修改记录目录1.使用JAXB来实现对象与XML之间的映射JAXB是Java Architecture for XML Binding的缩写,可以将一个Java对象转变成为XML格式,反之亦然。

我们把对象与关系数据库之间的映射称为ORM, 其实也可以把对象与XML之间的映射称为OXM(Object XML Mapping). 原来JAXB是JavaEE的一部分,在JDK6中,SUN将其放到了Java SE中,这也是SUN的一贯做法。

JDK6中自带的这个JAXB版本是2.0, 比起1.0(JSR 31)来,JAXB2(JSR 222)用JDK5的新特性Annotation来标识要作绑定的类和属性等,这就极大简化了开发的工作量。

实际上,在Java EE 5.0中,EJB和Web Services也通过Annotation 来简化开发工作。

另外,JAXB在底层是用STAX(JSR173)来处理XML文档。

下面用代码演示在JDK6中如何来用JAXBimport java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.Calendar;import javax.xml.bind.JAXBContext;import javax.xml.bind.JAXBException;import javax.xml.bind.Marshaller;import javax.xml.bind.Unmarshaller;import javax.xml.bind.annotation.XmlAttribute;import javax.xml.bind.annotation.XmlElement;import javax.xml.bind.annotation.XmlRootElement;public class JAXB2Tester {public static void main(String[] args) throws JAXBException, IOException {JAXBContext context = JAXBContext.newInstance(Person.class);//下面代码演示将对象转变为xmlMarshaller m = context.createMarshaller();Address address = new Address("China", "Beijing", "Beijing", "ShangDi West", "100080");Person p = new Person(Calendar.getInstance(), "JAXB2", address, Gender.MALE, "SW");FileWriter fw = new FileWriter("person.xml");m.marshal(p, fw);//下面代码演示将上面生成的xml转换为对象FileReader fr = new FileReader("person.xml");Unmarshaller um = context.createUnmarshaller();Person p2 = (Person) um.unmarshal(fr);System.out.println("Country:" + p2.getAddress().getCountry());3}}@XmlRootElement//表示person是一个根元素class Person {@XmlElementCalendar birthDay; //birthday将作为person的子元素@XmlAttributeString name; //name将作为person的的一个属性public Address getAddress() {return address;}@XmlElementAddress address; //address将作为person的子元素@XmlElementGender gender; //gender将作为person的子元素@XmlElementString job; //job将作为person的子元素public Person() {}public Person(Calendar birthDay, String name, Address address, Gender gender, String job) {this.birthDay = birthDay; = name;this.address = address;this.gender = gender;this.job = job;}}enum Gender {MALE(true), FEMALE(false);private boolean value;Gender(boolean _value) {value = _value;4}}class Address {@XmlAttributeString country;@XmlElementString state;@XmlElementString city;@XmlElementString street;String zipcode; //由于没有添加@XmlElement,所以该元素不会出现在输出的xml中public Address() {}public Address(String country, String state, String city, String street, String zipcode) { this.country = country;this.state = state;this.city = city;this.street = street;this.zipcode = zipcode;}public String getCountry() {return country;}}运行该程序,我们会得到一个person.xml 的文件,如下:<?xml version="1.0"encoding="UTF-8"standalone="yes"?><person name="JAXB2"><birthDay>2010-04-21T18:00:08.187+08:00</birthDay><address country="China"><state>Beijing</state><city>Beijing</city><street>ShangDi West</street></address><gender>MALE</gender><job>SW</job></person>5控制台会输出Country:China最后,想说一点,除了JAXB之外,我们还可以通过XMLBeans和Castor等来实现同样的功能。

2.理解STAXSTAX (JSR 173)是JDK6.0中除了DOM 和SAX之外的又一种处理XML文档的API。

STAX的来历在JAXP1.3(JSR 206)有两种处理XML文档的方法:DOM(Document Object Model)和SAX(Simple API for XML).由于JDK6.0中的JAXB2(JSR 222)和JAX-WS 2.0(JSR 224)都会用到STAX所以Sun决定把STAX加入到JAXP家族当中来,并将JAXP的版本升级到1.4(JAXP1.4是JAXP1.3 的维护版本). JDK6 里面JAXP的版本就是1.4.STAX简介STAX是The Streaming API for XML的缩写,一种利用拉模式解析(pull-parsing)XML文档的API. STAX通过提供一种基于事件迭代器(Iterator)的API让程序员去控制xml文档解析过程,程序遍历这个事件迭代器去处理每一个解析事件,解析事件可以看做是程序拉出来的,也就是程序促使解析器产生一个解析事件然后处理该事件,之后又促使解析器产生下一个解析事件,如此循环直到碰到文档结束符;SAX 也是基于事件处理xml 文档,但却是用推模式解析,解析器解析完整个xml 文档后,才产生解析事件,然后推给程序去处理这些事件;DOM 采用的方式是将整个xml文档映射到一颗内存树,这样就可以很容易地得到父节点和子结点以及兄弟节点的数据,但如果文档很大,将会严重影响性能。

下面代码演示了如何通过STAX读取xml文档和生成xml文档。

import java.io.FileNotFoundException;import java.io.FileOutputStream;import space.QName;import javax.xml.stream.XMLEventReader;import javax.xml.stream.XMLInputFactory;import javax.xml.stream.XMLOutputFactory;import javax.xml.stream.XMLStreamException;import javax.xml.stream.XMLStreamWriter;import javax.xml.stream.events.StartElement;import javax.xml.stream.events.XMLEvent;public class StaxTester {public static void main(String[] args) throws XMLStreamException, FileNotFoundException {readXMLByStAX();//用XMLEventReader 解析xml 文档writeXMLByStAX();//用XMLStreamWriter 写xml文档6}private static void readXMLByStAX() throws XMLStreamException, FileNotFoundException {XMLInputFactory xmlif = XMLInputFactory.newInstance();XMLEventReader xmler = xmlif.createXMLEventReader(StaxTester.class.getResourceAsStream("test.xml"));XMLEvent event;StringBuffer parsingResult = new StringBuffer();while (xmler.hasNext()) {event = xmler.nextEvent();if (event.isStartElement()) { //如果解析的是起始标记StartElement se = event.asStartElement();parsingResult.append("<");parsingResult.append(se.getName());if (se.getName().getLocalPart().equals("catalog")) {parsingResult.append(" id=\"");parsingResult.append(se.getAttributeByName(newQName("id")).getValue());parsingResult.append("\"");}parsingResult.append(">");} else if (event.isCharacters()) { //如果解析的是文本内容parsingResult.append(event.asCharacters().getData());} else if (event.isEndElement()) { //如果解析的是结束标记parsingResult.append("</");parsingResult.append(event.asEndElement().getName());parsingResult.append(">");}}System.out.println(parsingResult);}private static void writeXMLByStAX() throws XMLStreamException, FileNotFoundException {XMLOutputFactory xmlof = XMLOutputFactory.newInstance();XMLStreamWriter xmlw = xmlof.createXMLStreamWriter(new FileOutputStream("output.xml"));// 写入默认的XML 声明到xml文档xmlw.writeStartDocument();xmlw.writeCharacters("\n");// 写入注释到xml 文档7xmlw.writeComment("testing comment");xmlw.writeCharacters("\n");// 写入一个catalogs根元素xmlw.writeStartElement("catalogs");xmlw.writeNamespace("myNS", "/Lj");xmlw.writeAttribute("owner", "Lj");xmlw.writeCharacters("\n");// 写入子元素catalogxmlw.writeStartElement("/Lj", "catalog");xmlw.writeAttribute("id", "007");xmlw.writeCharacters("Apparel");// 写入catalog元素的结束标签xmlw.writeEndElement();// 写入catalogs元素的结束标签xmlw.writeEndElement();// 结束XML 文档xmlw.writeEndDocument();xmlw.close();}}test.xml文件内容如下:<?xml version="1.0"encoding="UTF-8"?><catalogs><catalog id="001">Book</catalog><catalog id="002">Video</catalog></catalogs>运行上面程序后,控制台输出如下:<catalogs><catalog id="001">Book</catalog><catalog id="002">Video</catalog></catalogs>运行上面程序后,产生的output.xml文件如下:<?xml version="1.0" ?><!--testing comment--><catalogs xmlns:myNS="/Lj"owner="Lj"><myNS:catalog id="007">Apparel</myNS:catalog></catalogs>3.使用Compiler API8现在我们可以用JDK6 的Compiler API(JSR 199)去动态编译Java源文件,Compiler API结合反射功能就可以实现动态的产生Java代码并编译执行这些代码,有点动态语言的特征。

相关文档
最新文档