Java 7: 全面教程-1.1 第一个Java程序

1.1第一个Java程序
这个小节主要介绍的是关于Java 开发的主要步骤:写代码,转换成字节码,和运行字节码。

1.1.1写一个Java 程序
你可以使用任何文本编辑器来写Java程序。 打开一个文本编辑器然后写入Listing 1.1 中的代码。另外,如果你已经下载了这本书的例子程序,那么直接复制到文本编辑器即可。

Listing 1.1: A simple Java program

class MyFirstJava{
Public static void main(String[] args) {
System.out.println(“Java rocks.”);
}
}

现在,你暂时只要知道Java代码必须存在于某个类中就足够了。然后,确认你的代码保存在MyFirstJava.java文件中。Java的所有源文件都必须用java扩展名。

1.1.2编译Java程序
你可以使用在JDK安装路径中的bin 文件夹里的javac 程序来编译Java 程序。假设你已经编辑了你的电脑中的PATH 环境变量(如果还没,请参照介绍章节中的“下载和安装Java”小节),你应该可以在任何路径调用javac。按照以下做法来编译Listing 1.1 的MyFirstJava类:
1. 打开命令窗口提示符然后把路径设置成为你保存MyFirstProgram.java 文件的目录。
2. 输入以下命令:
javac MyFirstJava.java
如果一切顺利,javac会在当前目录下生成一个名为MyFirstJava.class 的文件。

注意
Javac工具还有很多有特色的,包含了很多选项的命令。例如,你可以告诉它你想在哪个路径生成类文件。附录A,“javac”有关于javac的详细介绍。

1.1.3运行Java程序
使用JDK中的java程序来运行你的Java程序。再次提下,如果已经添加了PATH环境变量,你可以在任何路径下使用java。在当前目录下,输入以下命令然后按回车键。
java MyFirstJava

值得注意的是当你运行Java程序的时候无需加入class扩展名。你现在应该在你的控制台看到如下句子:
Java rocks.

恭喜你。你已经成功完成了你的第一个Java 程序。由于本章节的目标是让你熟悉书写代码和编译过程,我就不在这解释程序是如何运作的。

你还可以传递参数给Java 程序。例如,如果你有一个类名为Calculator,然后你想传两个参数给它,你就照这样做:
Java Calculator arg-1 arg-2

这里,arg-1是第一个参数,arg-2是第二个参数。你需要传递多少个参数就传递多少个。Java程序将会把这些参数变量存入字符串array中。你将在第五章节的“Core Classes”小节学习如何应用参数。

注意
Java工具是一个高级程序,它可以通过传递选项来配置。比如,你可以为它设置可分配的内存量。附录 B,“java”给出了这些选项的解释。

注意
Java工具可以用来运行已经打包成jar文件的Java类。查看附录C,“Setting an Application’s Entry Point”小节中的“jar”。 

时间: 2024-08-04 11:01:56

Java 7: 全面教程-1.1 第一个Java程序的相关文章

Java语言入门教程(十):Java语言中的关联与依赖关系

在开始本文的学习前,先总结一下已经学习过的内容.在前面9篇文章中,主 要是介绍Java类中的基本语法,是按照先概括,再具体的循序渐进的方式进行的 .先介绍了Java类的主要组成部分:数据成员,方法成员,构造方法.然后对一 些通用的知识点进行了较详细介绍,如权限访问修饰符,包,静态修饰符,数据 类型等.了解了这些通用的知识点后,对于类的三个组成部分分别详细介绍,如 介绍了类中各种数据的相关问题,介绍了构造方法的相关问题,介绍了方法会使 用到的操作符,流程控制,以及调用方法会使用到的值传递等知识点.

Java语言入门教程(十三):Java语言中继承中的构造方法问题

教程(十一)中,了解了Java语言中继承的基本概念.Java中类与类的继承 ,是单继承,主要目的是复用.子类对象可以复用父类中权限允许的属性和方法 ,所以子类的构造方法和父类的构造方法之间,有一定的调用关系,本文中将进 行详细介绍. 首先,需要记住一个事实:子类的任何一个构造方法,都将先调用父类某个 构造方法.如子类Trainer中的构造方法: public Trainer() { } 虽然这个构造方法的方法体中什么代码也没有写,但是也调用了父类 Employee的构造方法,默认调用的是Empl

Java 并发/多线程教程(七)-创建和启动java线程

      本系列译自jakob jenkov的Java并发多线程教程,个人觉得很有收获.由于个人水平有限,不对之处还望矫正! 创建和启动线程 在java中创建一个线程如下: Thread thread = new Thread(); 调用方法start()来启动一个线程: thread.start();         这个例子没有指定线程执行任何代码,线程将会在启动之后停止.         有两种方式指定线程应该执行什么代码.第一种方式就是创建一个Thread的子类并覆写run()方法.第

JAVA 入坑教程 | 章节九 详解java的装箱和拆箱

简单点,代码的方式简单点,装逼的方式请省略,我们又不是演员,别设计那些情节 什么是装箱?什么是拆箱?代码如何展示? 装箱过程是怎样的?拆箱过程是怎样的? 有问题可加入安卓QQ群: 246231638 装箱和拆箱的概念 简单点,代码的方式简单点,装逼的方式请省略,我们又不是演员,别设计那些情节: //自动装箱 Integer total = 9999; //自动拆箱 int totalprim = total; 装箱:就是自动将基本数据类型转换为包装器类型: 拆箱:就是自动将包装器类型转换为基本数

Java语言入门教程(三):Java语言的访问权限修饰符

上篇文章中,提到了Java类需要打包,打包后可以进行访问权限控制.本文 中,将对Java语言中的访问权限修饰符,进行简单介绍. 一个Java应用有很多类,但是有些类,并不希望被其他类使用.每个类中都 有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用. 如何能做到访问控制呢?就需要使用访问权限修饰符. Java语言中的访问权限修饰符有4种,但是仅有3个关键字,因为不写访问权 限,在Java中被称为默认权限,或同包权限,本文中以(default)代替.下面 按照权限从小到大的顺序

java基础-【online】新手求助一个java的数据结构。

问题描述 [online]新手求助一个java的数据结构. 大神,求解决. 解决方案 看上去应该用泛型加链表/集合,因为Java不支持泛型的逆变和协变,所以你必须为a b定义一个基类类型 解决方案二: 那就安装java环境呗 解决方案三: 用泛型列表就可以. 类型这样的结构:List list = new ArrayList(); 解决方案四: 如果a型数据重复值的是什么重复, 解决方案五: 你的意思是a型数据里可能有b,但b型数据都是b吧. 那就这么做a用List list = new Arr

Struts2教程1:第一个Struts2程序

在本系列教程中我们将学习到Struts2的各种技术.在本教程中使用的工具和程序库的版本如下: 开发工具:MyEclipse6 Web服务器:Tomcat6 Struts版本:Struts2.0.11.1 JDK版本:JDK1.5.0_12 J2EE版本:Java EE5.0 在本系列教程中Web工程的上下文路径都是struts2,如果在Web根目录有一个index.jsp文件,则访问路径如下: http://localhost:8080/struts2/index.jsp 由于MyEclipse

Java语言入门教程(十一):Java语言中的数组

在教程(十)中,我们学习了Java类之间常见的两种关系,即关联和依赖. 如果A关联或依赖B,如果仅从A到B这个方向看,从数量上,可能有1对1和1对多 两种可能.面向对象的应用,都是映射现实世界的对象以及对象之间的关系的, 仔细考察一下我们身边的情况,对象与对象之间如果存在关联或依赖,其实1对 多的关系更为常见.如,一个部门有多个员工,一个学员有多个院系,一个人有 多张毕业证书- 上篇文章中的例子,学生只能选择一门免费课程学习,如果培训中心加大优 惠力度,每个学生最多可以选择3门课程学习,应该如何

Struts2系列教程1:第一个Struts2程序

在本系列教程中我们将学习到Struts2的各种技术.在本教程中使用的工具和程序库的版本如下: 开发工具:MyEclipse6 Web服务器:Tomcat6 Struts版本:Struts2.0.11.1 JDK版本:JDK1.5.0_12 J2EE版本:Java EE5.0     在本系列教程中Web工程的上下文路径都是struts2,如果在Web根目录有一个index.jsp文件,则访问路径如下: http://localhost:8080/struts2/index.jsp     由于M