第2章 Java程序设计环境
2.1 安装Java开发工具箱
2.1.1 下载JDK
Java术语
术语 缩写 解释
Java Development Kit JDK 编写Java程序的软件
Java Runtime Enviroment JRE 运行Java程序的软件
Standard Edtion SE 用于桌面或简单的服务器应用的Java平台
Eterprise Edtion EE 用于复杂的服务器应用的Java平台
Micro Edtion ME 用于手机和其他小型设备的Java平台
NetBeans Oracle的集成开发环境
只下载Java开发工具箱JDK即可(搜索Java JDK).
2.1.2 设置执行路径
下载安装JDK之后,还需要执行另外一个步骤:把jdk/bin目录(即 javac.exe所在的路径)添加到执行路径中.所谓执行路径时指操作系统搜索本地可执行文件的目录列表.在UNIX(包括Linux,Mac OS和Solaris)环境下,编辑执行路径的过程与所使用的shell相关.如果使用的是Bourne Again shell(linux默认的),在~/.bashrc或~/.bash_profile文件的末尾添加:
export PATH=jdk/bin(即执行路径):$PATH
在Windows下,在环境变量的找到变量path,将执行路径添加到path中,使用分号将新条目分隔开.
下面测试上述设置是否正确:
1.打开一个shell窗口
2.键入:javac -version,然后Enter键
3.如果显示 javac 1.8.0_60,就说明设置正确.
2.3 使用命令行工具
1.打开一个shell窗口2.进入Welcome.java所在的目录(编写Welcome.java).
3.键入下面的命令:
javac Welcome.java
java Welcome
然后,将会在shell中看到一个输出.如下所示:
都进行了哪些操作? javac程序是一个java编译器.它将文件Welcome.java编译成Welcome.class,并发送到Java虚拟机.虚拟机执行编译器放在class 文件中的字节码.
Welcome.java如下所示:
public class Welcome {
public static void main(String[] args) {
String[] greeting = new String[2];
greeting[0] = "hello ";
greeting[1] = "world!";
for (String g : greeting)
System.out.println(g);
}
}
注意:
一定要注意大小写,尤其是类名为Welcome,而不是welcome或WELCOME.
编译时需要提供一个文件名(Welcome.java),而运行时,只需要指定类型(Welcome),不要附带.java或.class
2.5 运行图形化应用程序
下面,给出一个图形化应用程序.这个程序是一个简单的图像文件查看器(viewer),它可以加载病显示一个图像。首先,由命令行编译并运行这个程序。1.打开一个shell窗口
2.进入CoreJavaBook/v1ch02/ImageViewer.(本书的源码,可以在官网下载. http://horstmann.com/corejava.html)
3.输入:
javac ImageViewer.java
java ImageViewer
运行后将弹出一个标题栏为ImageViewer的新程序窗口.
选择File-Open,然后找到一个图像文件并打开.选择File-Exit关闭.
下面浏览一下源代码,这个程序比第一个程序要长很多,但要是想一想C或C++编写同样功能的应用程序所需要的代码量,就不会感到它复杂了.
ImageViewer.java的源码如下:
import java.awt.EventQueue;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
/**
* A program for viewing images.
*/
public class ImageViewer {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
JFrame frame = new ImageViewerFrame();
frame.setTitle("ImageViewer");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
/**
* A frame with a label to show an image.
*/
class ImageViewerFrame extends JFrame {
private JLabel label;
private JFileChooser chooser;
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 400;
public ImageViewerFrame() {
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
// use a label to display the images
label = new JLabel();
add(label);
// set up the file chooser
chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
// set up the menu bar
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu menu = new JMenu("File");
menuBar.add(menu);
JMenuItem openItem = new JMenuItem("Open");
menu.add(openItem);
openItem.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event) {
// show file chooser dialog
int result = chooser.showOpenDialog(null);
// if file selected, set is as icon of the label
if (result == JFileChooser.APPROVE_OPTION) {
String name = chooser.getSelectedFile().getPath();
label.setIcon(new ImageIcon(name));
}
}
});
JMenuItem exitItem = new JMenuItem("Exit");
menu.add(exitItem);
exitItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
System.exit(0);
}
});
}
}
2.6 建立并运行applet
前面的两个程序是Java应用程序.它们与所有本地程序一样,可以独立地运行.Java能够在浏览器中运行applet,下面介绍一下如何利用命令行建立并运行applet.然后利用JDK自带的applet查看器加载applet.1.打开shell窗口
2.进入CoreJavaBook/v1ch02/WelcomeApplet.
3.输入:
javac WelcomeApplet.java
appletviewer WelcomeApplet.html
第一条命令是调用java编译器的命令,它将WelcomeApplet.java源文件编译成字节码文件WelcomeApplet.class.
接着调用appletviewer程序,这是JDK自带的一个特殊工具,它可以帮助快速测试applet