要编译示例程序Example,须运行编译器程序javac,并在命令行上指定源程序文件名,格式如下所示:
C:>javac Example.java
编译器javac产生了一个名为Example.class的文件,该文件包含程序的字节码。前面已讨论过,Java字节码中包含的是Java解释程序将要执行的指令码。因此,javac的输出并不是可以直接运行的代码。
要真正运行该程序,你必须使用名叫java的Java解释器。具体做法是把类名Example作为一个命令行参数输入,格式如下所示:
C:>java Example
运行这个程序,将输出如下内容:
This is a simple Java program.
当Java源代码被编译后,每个单独的类都被放入自己的输出文件中,并以类的名字加“.class”扩展名为其文件名。这就是为什么Java源程序文件必须与其中包含的类同名的原因——源程序文件将与“.class”文件相同。运行Java解释器实际上是指定你想要解释器运行的类的名字,它会自动搜索包含该名字且带有.class扩展名的文件。如果找到,它将运行包含在该指定类中的代码。

Java新职篇:编译程序(2)相关推荐

  1. Java新职篇:变量的作用域和生存期

    到目前为止,我们使用的所有变量都是在方法main()的后面被声明.然而,Java允许变量在任何程序块内被声明.在第2章中已解释过了,程序块被包括在一对大括号中.一个程序块定义了一个作用域(scope) ...

  2. Java新职篇:面向对象编程的3个原则是什么?

    所有面向对象的编程语言都提供帮助你实现面向对象模型的机制,这些机制是封装,继承及多态性.现在让我们来看一下它们的概念. 封装 封装(Encapsulation)是将代码及其处理的数据绑定在一起的一种编 ...

  3. java如何抽象一辆车,java新职篇:面向对象之抽象

    面向对象编程的一个实质性的要素是抽象.人们通过抽象(abstraction)处理复杂性. 例如,人们不会把一辆汽车想象成由几万个互相独立的部分所组成的一套装置,而是把汽车想成一个具有自己独特行为的对象 ...

  4. Java新职篇:一维数组

    数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法. 一维数 ...

  5. Java新职篇:类型提升的约定

    除了将byte型和shorts型提升到int型以外,Java定义了若干适用于表达式的类型提升规则(type promotion rules).首先,如刚才描述的,所有的byte型和short型的值被提 ...

  6. Java新职篇:声明一个变量

    变量是Java程序的一个基本存储单元.变量由一个标识符,类型及一个可选初始值的组合定义.此外,所有的变量都有一个作用域,定义变量的可见性,生存期.接下来讨论变量的这些元素. 声明一个变量 在Java中 ...

  7. Java新职篇:使用程序块

    在Java中,可以将2个或2个以上的语句组成一组,这样的一组语句称为程序块(Codeblocks).程序块是通过将所属语句放在花括号中来实现.一旦创建了程序块,它就成为一个逻辑单元,可以作为一个单独的 ...

  8. Java新职篇:for循环

    你可能从先前的编程经验已经知道,在几乎所有的编程语言中,循环语句都是其重要组成部分.Java也不例外.事实上,你将在第5章中看到,Java提供了一套功能强大的循环结构.For循环也许是最通用的.如果你 ...

  9. Java新职篇:什么是键入程序

    既然Java面向对象的基础已经被讨论过了,接下来让我们看一些实际的Java程序.从编译及运行下面这个简短示例程序开始.你将看到,这个程序的功能比你想像的要多. /* This is a simple ...

最新文章

  1. subplot subplots绘制子图
  2. linux c dns查询IP地址
  3. python arcade库是干什么的-Python街机模块arcade的鼠标移动与单击示例
  4. C++和C语言的关系
  5. 计算机 注册表 远程桌面,仅允许运行使用网络级别身份验证的远程桌面计算机连接失败处理方法(远程桌面连接)...
  6. 创建SQL函数计算员工加班时间
  7. 野生前端的数据结构练习(1)——栈
  8. 三星旗舰Galaxy Note 10系列发布 5G版本国行尝鲜价8299元
  9. .NET基础编程之特性 - Attribute
  10. Hbuilder 屏幕放大缩小
  11. RoadRunner安装与使用教程
  12. 设置linux开机自动运行某条命令或程序和安装jdk(jar)
  13. pop3邮箱服务器地址,常用邮箱服务器(smtp,pop3)地址,端口(示例代码)
  14. python如何导入datetime包
  15. 三年内人人有FIL,FIL 世界零撸板块引发全球流量狂潮!
  16. flutter 语音转文字(科大讯飞)
  17. connecting to host: cephm resulted in errors: IOError cannot send (already closed?)[ceph-deploy部署报错]
  18. 基于SpringBoot调用百度ocr以及企查查接口实现对营业执照信息的提取并识别真伪
  19. 闲谈IPv6-Anycast以及在Linux/Win7系统上的Anycast配置
  20. flutter 文字下划线 行距

热门文章

  1. [转载] pandas DataFrame apply()函数(1)
  2. Spring MVC浅入浅出——不吹牛逼不装逼
  3. CF932E Team Work(第二类斯特林数)
  4. Linux首次登陆设置root
  5. java.util.HashMap
  6. 最长不下降子序列的长度
  7. 该网站可能含有恶意软件,有可能会危害您的电脑 清除办法
  8. 大航海北斗星导航系统V1.10
  9. 【RobotStudio学习笔记】(八)速度设置
  10. python逢7过小游戏_while循环拓展:用python做一个逢七过小游戏