JDK 5.0(Tiger)中的一些新特性(1):
Last modified:2013-04-06 23:57:27
***********************************************
5.0中引入了可变参数:
invoke(Object obj,Object... args)
1.4中使用的还是数组:
invoke(Object obj ,Object[] args)
为了兼容1.4版本,如果在向invoke中传入的对象是一个数组类型的时候,我们要么再加一层数组嵌套,要么利用强制转换告诉jvm这里是一个对象。因为如果没有特殊处理的话,jvm将按照1.4的方法处理,即把数组拆开!
MethodCharAt.invoke(str,new Object[]{new int[]{2}});
MethodCharAt.invoke(str,(Object)new int[]{2});
可变参数特点:
1,只能出现在参数列表的最后;
2,... 位于变量类型和变量名之间,前后有无空格都可以。
3,调用可变参数的方法时,编译器为该可变参数隐含创建了一个数组,在方法中以数组的形式访问可变参数。
由于可变参数这个特性是在jdk5.0出现的,所以为了兼容老版本,在使用可变参数时,如果我们希望传入的是一个数组,那么jvm会把这个数组拆开,为了避免这样的情况我们可以,在这个数组外面再加一层数组或者申明这个数组是Objecct的。
Example:
在反射中我们用到的这段代码:
MethodCharAt.invoke(str,new Object[]{new int[]{2}});
MethodCharAt.invoke(str,(Object)new int[]{2});
增强for语句(for\in or foreach):
5.0出现的新特性。格式:for(type variableName : variabaleSet){...}
注意事项:
1,迭代的变量必须在()中定义;
2,集合变量可以是数组集合或实现了Iterable接口的集合类。
注释快捷键:ctrl+shift+/ ;
取消注释快捷键:ctrl+shift+\ ;
如何获得新的知识?去oracle官网下载最新JDK的语言规范(langspec)
英语词汇:specification 规范,明确说明,说明书。
自动装箱:基础数据类型(primitive data type)——>相应的对象。
Integer iObj = 12;
自动拆箱:对象——>相应的基础数据类型。
sop( iObj + 12 );
java中在创建一个小于127的Integer对象时,先到缓冲池中去找有没有一个一样的对象,如果没有就创建一个,如果有直接指向那个对象,这是因为小于127的比较常用,所以可以节省内存资源,这里使用了享元设计模式。
强调:Integer小于127的如果内存中存在相同的,就不再建立新的对象。
享元模式(flyweight):如果有很多很小的对象,我们会经常用到,用的时候该对象的内部状态都没有变化,那么就可以把他变成一个对象。那些不同的属性把它变成方法的参数(外部状态),那些相同的属性叫内部状态。
Alt+shift+x:运行;
Alt+shift+x j:运行java Application;
相关推荐
总的来说,JDK 1.5(Java 5.0)的新特性极大地提高了Java的生产力和代码质量。从泛型到增强的for循环,再到注解和枚举,这些改进都让Java开发者能够编写出更安全、更易于维护的代码。在实际开发中,理解并充分利用...
Java开发工具包(JDK)5.0,代号Tiger,是Java语言的一个重要版本,带来了许多新特性和改进,极大地提升了开发效率和代码的可读性。以下是JDK5.0的主要新特性: 1. **自动封箱与自动解封**: 在JDK5.0之前,Java中...
【Core Java Part III】是达内教育集团提供的一份关于Java高级编程的培训课件,主要涵盖了Java 5.0(也称为Tiger)的新特性和设计原则。这份课件强调了达内教育在IT培训中的高质量、稳定性和兼容性,旨在提升学员的...
本文将详细介绍JDK 1.5 中的一些关键新特性及其应用场景。 #### 二、核心新特性 ##### 1. foreach 循环 在JDK 1.5中引入了增强型for循环,也称为foreach循环。这一特性允许开发者更简洁地遍历数组或集合中的元素。...
2. **JDK 1.5(5.0)"Tiger"**:这个版本引入了泛型、枚举、自动装箱/拆箱、增强的for循环(foreach)等关键特性,显著提高了代码的可读性和安全性。 3. **JDK 1.6(6.0)"Mustang"**:这一版本进一步增强了性能,...
5. Java SE 5.0 "Tiger":这是Java历史上的一个重要里程碑,引入了泛型、枚举、可变参数、注解等关键特性,显著提升了代码的类型安全性和可读性。 6. Java SE 6 "Mustang":这个版本继续优化了JVM,引入了Swing的...
JDK的版本演变历程值得一提,从JDK 1.2版本开始,由于引入了许多新特性,Sun公司将之称为J2SDK(Java 2 Software Development Kit)。JDK 5.0,代号为Tiger,是JDK 1.5的一个重要升级,进一步增强了Java平台的功能。...
此版本的代号是"Project Tiger",引入了泛型、枚举类型、自动装箱/拆箱、注解等新特性,极大地提高了代码的可读性和安全性。此外,还引入了类型安全的变量迭代器,增强了反射API。 6. JDK 6 (2006年) JDK 6(代号...
摘要:Java之所以得到很多程序员的青睐,除了她的严谨的面向对象特性外,还有一个不容轻视的因素,那...一门语言如果没有库,功能将会大打折扣,在JDK5.0版本中,其核心库也有了诸多的改进,本文将就其新特性进行简介。
jdk 1.5(5.0):Tiger,老虎 jdk 1.6(6.0):Mustang,野马 1. 下载JDK 2. 安装JDK 3. 设定环境变量(可以是用户变量,也可以是系统变量),指向JDK 安装目录中 的bin 目录 4. 通过运行,输入cmd 打开命令行...
jdk5.0 jdk6.0 jdk7.0 Tiger Mustang Dolphin 老虎 野马 海豚 路虎 悍马 .... JRE = java runtime environment = java运行环境 组成关系: JVM = 类加载器 + 字节码校验器 + 解释执行器 JRE = JVM + API...
- 每个版本都有其独特的改进和新特性,如JDK5.0引入了泛型、枚举等新特性。 **环境变量配置**: - **path**: 配置Java编译器(javac.exe)和Java虚拟机(java.exe)的位置,使得用户可以在任何目录下运行Java程序。 - **...
- **2014年**:Java发布了JDK 8.0版本,引入了许多重要的新特性和改进。 - **2018年**:Java被开源组织接管,并更名为雅加达Jakarta。 #### 二、Java的优势 - **开源性**:Java是开源的,这意味着任何人都可以免费...
- **Chapter 07-16**:涵盖异常处理、图形用户界面(GUI)、事件模型、JFC、多线程、输入输出流、网络编程、Tiger(J2SE 5.0)新特性、泛型和注解等。 3. **Java的版本演变**: - 1995年发布第一个版本,1996年...
2002 年的 JAVASE 5.0 Tiger,2004 年的 JAVASE 5.1 Dragonfly,2006 年的 JAVASE 6.0 Mustang,2011 年的 JAVASE 7.0 Dolphin。 Java 语言平台主要包括三个版本:J2SE(Java 2 Platform Standard Edition),J2ME...
随后的JDK 1.1引入了JDBC、内部类、Java Bean等新特性。1998年,Java 2企业平台J2EE发布,为大型企业应用提供了框架。1999年,Sun公司划分了Java的三个版本:J2SE(标准版)、J2EE(企业版)和J2ME(微型版),分别...
Java并发框架是Java JDK中内置的一系列用于处理多线程并行执行的工具和类库,自JDK 5.0引入以来,极大地简化了并发编程的复杂性。这个框架由Doug Lea设计,并在JSR-166任务中提出,最终在Tiger(JDK 5)版本中被引入...
随着版本的迭代,JDK不断完善,例如JDK 1.2引入了Swing和Java 2平台的划分,JDK 1.4带来了JCP参与的首个发行版,而J2SE 5.0(Tiger)则实现了重大语法改进,如泛型和元数据支持,极大地提升了开发效率。 2. Eclipse...
J2SE 5.0(也被称为Tiger)在2004年发布,引入了泛型、注解、自动装箱/拆箱等重要特性,极大地增强了Java语言的表达能力。在Sun被Oracle收购之后,Java继续发展,JDK 1.6(也称为Mustang)在2006年发布,其中包括...
自 JDK 1.0 发布以来,Java 语言经历了多次重要的升级,其中最显著的变化出现在 JDK 5.0(代号 Tiger)。这一版本引入了多项新特性,包括: - **泛型 (Generics)**:允许在编译时检查类型安全,并避免了运行时的...