`
xumingming64398966@yahoo.com.cn
  • 浏览: 41117 次
文章分类
社区版块
存档分类

JDK1.6.0新特性详解与代码示例

阅读更多

JDK6.0发布有段时间了,新的JDK也有不少新的特性,我去网上搜集了一下,列在下面和大家一起学习.
1.Desktop和SystemTray. 在JDK6中 ,AWT新增加了两个类:Desktop和SystemTray,前者可以用来打开系统默认浏览器浏览指定的URL,打开系统默认邮件客户端给指定的邮箱发邮件,用默认应用程序打开或编辑文件(比如,用记事本打开以txt为后缀名的文件),用系统默认的打印机打印文档;后者可以用来在系统托盘区创建一个托盘程序。

我随便找了几张图,在Tray里面都是空的,没有图,可能是图太大,有xdjm知道希望告诉我.

import java.awt.AWTException;
import java.awt.Desktop;
import java.awt.Image;
import java.awt.MenuItem;
import java.awt.PopupMenu;
import java.awt.SystemTray;
import java.awt.Toolkit;
import java.awt.TrayIcon;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;

public class DesktopTrayTest ...{
    
private static Desktop desktop;
    
private static SystemTray st;
    
private static PopupMenu pm;
    
    
public static void main( String[] args ) ...{
        
if( Desktop.isDesktopSupported() ) ...{
            desktop 
= Desktop.getDesktop();
        }

        
if( SystemTray.isSupported() ) ...{
            st 
= SystemTray.getSystemTray();
            Image image 
= Toolkit.getDefaultToolkit().createImage( "http://www.51ppt.com.cn/Article/Uploadphotos/200604/20064147333288.png" );
            createPopupMenu();
            TrayIcon ti 
= new TrayIcon( image, "Demo", pm );
            
try...{
                st.add( ti );
            }
 catch( AWTException awte ) ...{
                awte.printStackTrace();
            }

        }

    }

    
public static void sendMail( String mail ) ...{
        
if( desktop != null &&
            desktop.isSupported( Desktop.Action.MAIL ) ) 
...{
            
try ...{
                desktop.mail( 
new URI( mail ) );
            }
 catch (IOException e) ...{
                e.printStackTrace();
            }
 catch (URISyntaxException e) ...{
                e.printStackTrace();
            }

        }

    }

    
public static void openBrowser( String url ) ...{
        
if( desktop != null &&
            desktop.isSupported( Desktop.Action.BROWSE )) 
...{
            
try ...{
                desktop.browse( 
new URI( url ) );
            }
 catch (IOException e) ...{
                e.printStackTrace();
            }
 catch (URISyntaxException e) ...{
                e.printStackTrace();
            }

        }

    }

    
public static void edit() ...{
        
if( desktop != null &&
            desktop.isSupported( Desktop.Action.EDIT ) ) 
...{
            File file 
= new File( "test.txt" );
            
try ...{
                
if( file.exists() == false ) ...{
                    file.createNewFile();
                }

                desktop.edit( file );
            }
 catch( IOException ioe ) ...{
                ioe.printStackTrace();
            }

        }

    }

    
public static void createPopupMenu() ...{
        pm 
= new PopupMenu();
        MenuItem ob 
= new MenuItem( "Open url" );
        ob.addActionListener( 
new ActionListener() ...{
            
public void actionPerformed( ActionEvent ae ) ...{
                openBrowser( 
"http://blog.csdn.net/xumingming64398966" );
            }

        }
);
        MenuItem sm 
= new MenuItem( "Send Mail" );
        sm.addActionListener( 
new ActionListener() ...{
            
public void actionPerformed( ActionEvent ae ) ...{
                sendMail( 
"64398966@qq.com" );
            }

        }
);
        MenuItem ed 
= new MenuItem( "Edit" );
        ed.addActionListener( 
new ActionListener() ...{
            
public void actionPerformed( ActionEvent ae ) ...{
                edit();
            }

        }
);
        MenuItem ex 
= new MenuItem( "Exit" );
        ex.addActionListener( 
new ActionListener() ...{
            
public void actionPerformed( ActionEvent ae ) ...{
                System.exit( 
0 );
            }

        }
);
        pm.add( ob );
        pm.add( sm );
        pm.add( ed );
        pm.addSeparator();
        pm.add( ex );
    }

}

 

2.Console. JDK6中提供了java.io.Console类专用来访问基于字符的控制台设备. 你的程序如果要与Windows下的cmd或者Linux下的Terminal交互,就可以用Console类代劳. 但我们不总是能得到可用的Console, 一个JVM是否有可用的Console依赖于底层平台和JVM如何被调用. 如果JVM是在交互式命令行(比如Windows的cmd)中启动的,并且输入输出没有重定向到另外的地方,那么就可以得到一个可用的Console实例. 下面代码演示了Console类的用法:

import java.io.Console;

public class ConsoleTest ...{
    
public static void main( String[] args ) ...{
分享到:
评论

相关推荐

    JDK API 1.6.0 中文版.rar

    总的来说,《JDK API 1.6.0 中文版》是Java开发者的宝贵资源,它不仅提供了全面的API信息,还帮助开发者掌握JDK 1.6.0的新特性和改进,从而提高开发效率和代码质量。尽管现在已经有了更新的JDK版本,但学习和了解...

    IDK API 1.6.0中文.rar

    三、JDK 1.6.0新特性 1. **增强的Swing组件**:JDK 1.6.0对Swing GUI库进行了改进,增加了更多的组件和样式选择,使得界面设计更加美观且功能丰富。 2. **动态代理**:Java 1.6引入了`java.lang.reflect.Proxy`类...

    JDK1.6安装过程详解

    - 添加JDK的bin目录路径到Path变量中,例如`C:\Program Files\Java\jdk1.6.0_01\bin`。确保多个路径之间用分号(`;`)隔开。 2. **设置ClassPath变量**: - 新建一个名为`classpath`的系统变量。 - 其值应包含JDK...

    JDK环境变量配置

    `(假设JDK安装路径为`C:\jdk1.6.0`),确保与原有值之间使用分号(`;`)分隔。 - 例如,最终的变量值可能是这样的:`C:\jdk1.6.0\bin;C:\Program Files (x86)\Common Files\...` **示例:** ``` 变量名: Path 变量值...

    多jdk多tomcat配置

    ### 多JDK与多Tomcat配置详解 在软件开发过程中,不同的项目可能对Java运行环境有着不同的需求,比如一个项目需要使用JDK 1.4 和 Tomcat 5.0,而另一个项目则需要使用JDK 1.5 和 Tomcat 6.0。这种情况下,单一的...

    JDK1.6安装和配置详解(图文说明)

    ### JDK1.6安装与配置详解 #### 一、前言 JDK(Java Development Kit)作为Java开发的基础工具包,对于所有Java开发者而言至关重要。它不仅包含了一系列基础的Java API,还提供了一些用于编译、调试和部署Java应用...

    java环境的配置--java(JDK)的配置.pdf

    - 安装路径示例:`G:\Program Files\Java\jdk1.6.0_10` 2. **配置环境变量**: - **用户变量**: - **JAVA_HOME**:指向JDK的安装路径。 - 变量值示例:`G:\Program Files\Java\jdk1.6.0_10` - **Path**:使...

    jdk环境变量配置

    - 点击“编辑”,在变量值中添加JDK的`bin`目录路径,格式为`C:\Program Files (x86)\Java\jdk1.6.0_21\bin`。如果已有其他路径,请在末尾加上分号`;`再添加新的路径。 - 示例:假设原变量值为`%SystemRoot%\system...

    J2EE环境配置

    - `path`配置示例:`C:\jdk1.6.0\bin; C:\jdk1.6.0\jre\bin;` - **验证JDK安装**:打开命令提示符,输入`java -version`命令来确认JDK安装成功。如果输出了JDK版本信息,则表示配置正确。 ##### 2. 安装Tomcat ...

    JDK的安装与配置

    例如,安装路径可能是`C:\Program Files\Java\jdk1.6.0_22`。确保选择自定义安装并指定一个方便的路径,以便后续配置环境变量。 2. **配置环境变量** - **JAVA_HOME**: 这个环境变量用于指向JDK的安装目录。配置...

    java环境的配置--java(JDK)的配置参照.pdf

    - 假设将JDK安装到路径`G:\Program Files\Java\jdk1.6.0_10`。 2. **设置环境变量** - **用户变量**: - 变量名:`JAVA_HOME` - 变量值:`G:\Program Files\Java\jdk1.6.0_10`(JDK的安装路径) - 变量名:`...

    tomcat与jdk的配置

    ### Tomcat与JDK的配置详解 #### 一、引言 在开发Java Web应用程序时,JDK(Java Development Kit)和Tomcat是必不可少的工具。JDK提供了编译、运行Java程序的基本环境,而Tomcat则作为轻量级的应用服务器,支持...

    BlackBerry Eclipse Windows开发平台搭建

    - `JAVA_HOME`:指向JDK的安装路径,例如`C:\Program Files\Java\jdk1.6.0_12`。 - `CLASSPATH`:配置类路径以包含JDK库文件,例如`.;C:\Program Files\Java\jdk1.6.0_12\lib;C:\Program Files\Java\jdk1.6.0_12\...

    Java JDK安装、环境变量配置

    - 安装过程中可以自定义安装路径,如示例中的`C:\Program Files(x86)\Java\jdk1.6.0_10`。 #### 三、配置Java环境变量 ##### 1. 设置JAVA_HOME - 在“我的电脑”上右键选择“属性”,然后点击“高级系统设置”。 -...

    Java开发环境的搭建

    本示例中指定安装路径为`C:\ProgramFiles\Java`下的`jdk1.6.0_02`目录。 3. **配置系统环境变量** 安装完JDK后,需要配置系统环境变量来确保开发环境可以正常使用。主要涉及三个环境变量:`JAVA_HOME`、`...

    如何配置JDK

    JDK是Java运行环境的基础,包含Java编译器、文档和示例代码等工具,是Java应用程序能够被编译和运行的前提条件。正确配置JDK,意味着可以顺利地编写、编译和执行Java程序,是每一个Java开发者必备的基本功。 #### ...

    Java初学者必看

    - 示例操作步骤:添加一个新的系统变量`JAVA_HOME`,其值为JDK的安装目录,例如`C:\Program Files\Java\jdk1.6.0_02`。 通过以上步骤,可以确保系统正确识别JDK,并且能够运行Java程序。 #### 二、编写与运行简单...

Global site tag (gtag.js) - Google Analytics