§ 1.3 简 单 的 Java程 序
下 面 我 们 先 介 绍 两 个 简 单 的 Java程 序 ,并 对 其 进 行 分 析 。
例 1.1.
public class HelloWorldApp { //an application
public static void main (String args[ ]){
System.out.println("Hello World!");
}
}
本 程 序 的 作 用 是 输 出 下 面 一 行 信 息 :
Hello World!
程 序 中 ,首 先 用 保 留 字 class来 声 明 一 个 新 的 类 ,其 类 名 为Hell oWorldApp,它 是 一 个公 共 类 (public)。 整 个 类 定 义 由 大 括 号 {}括 起 来 。 在 该 类 中 定义 了 一 个 main ()方 法 ,其中 public表 示 访 问 权 限 ,指 明 所 有 的 类 都 可 以 使 用 这 一 方 法 ;static指 明 该 方 法 是 一 个 类方 法 ,它 可 以 通 过 类 名 直 接 调 用 ;void则 指 明 main()方 法 不 返 回 任何 值 。 对 于 一 个 应 用程 序 来 说 ,main()方 法 是 必 需 的 ,而 且 必 须 按 照 如 上 的 格 式 来 定义 。 Jave解 释 器 在 没 有生 成 任 何 实 例 的 情 况 下 ,以 main()作 为 入 口 来 执 行 程 序 。 Jave程序 中 可 以 定 义 多 个 类 , 每 个 类 中 可 以 定 义 多 个 方 法 ,但 是 最 多 只 能 有 一 个 公 共 类,main()方 法 也 只 能 有 一 个 ,作 为 程 序 的 入 口 。 main()方 法 定 义 中 ,括 号 ()中 的 String args[ ]是传 递 给 main()方 法 的 参 数 ,参 数 名 为 args,它 是 类 String的 一 个 实 例 ,参 数 可 以 为 0个 或 多 个,每 个 参 数 用 "类 名 参数 名 "来 指 定 , 多 个 参 数 间 用 逗 号 分 隔 。 在 main()方 法 的 实 现(大 括 号 中 ),只 有 一 条 语句 :
System.out.println ("Hello World!"); 它 用 来 实 现 字 符 串 的 输 出 ,这 条 语 句 实 现 与 C语 言 中 的printf 语 句 和 C++中 cout<<语 句 相 同 的 功 能 。 另 外 ,//后 的 内 容 为 注 释 。
现 在 我 们 可 以 运 行 该 程 序 。 首 先 把 它 放 到 一 个 名 为HelloWor ldApp.java的 文 件 中 ,这 里 ,文 件 名 应 和 类 名 相 同 ,因 为 Java解 释 器 要 求 公 共 类 必 须 放在 与 其 同 名 的 文 件 中。 然 后 对 它 进 行 编 译 :
C:\>javac HelloWorldApp.java
编 译 的 结 果 是 生 成 字 节 码 文 件 HelloWorldApp.class。最 后 用java 解 释 器 来 运 行 该字 节 码 文 件 :
C:\>java HelloWorldApp
结 果 在 屏 幕 上 显 示 Hello World!
我 们 再 来 看 下 面 的 一 个 例 子 : 例 1.2
import java.awr.*;
import java.applet.*;
public class HelloWorldApplet extends Applet { //an applet
public void paint(Graphics g){
g.drawString ("Hello World!",20,20);
}
}
这 是 一 个 简 单 的 Applet(小 应 用 程 序 )。 程 序 中 ,首 先 用 import语 句 输 入 java.awr和java.applet下 所 有 的 包 ,使 得 该 程 序 可 能 使 用 这 些 包 中 所 定 义 的类 , 它 类 似 于 C中 的#include 语 句 。 然 后 声 明 一 个 公 共 类 HelloWorldApplet,用 extends指明 它 是 Applet的 子 类 。 在类 中 ,我 们 重 写 父 类 Ap-plet的 paint()方 法 ,其 中 参 数 g为 Graphics类,它 表 明 当 前 作 画 的 上下 文 。 在 paint()方 法 中 ,调 用 g的 方 法 drawString(),在 坐 标 (20,20)处输 出 字 符 串 ""Hello World!",其 中 坐 标 是 用 象 素 点 来 表 示 的 。
这 个 程 序 中 没 有 实 现 main()方 法 ,这 是 Applet与 应 用 程序 Applica tion(如 例 1)的 区 别 之一 。 为 了 运 行 该 程 序 ,首 先 我们 也 要 把 它 放 在 文 件HelloWorldAppl et.java中 ,然 后 对 它 进行 编 译 :
C:\>javac HelloWorldApplet.java
得 到 字 节 码 文 件 HelloWorldApplet.class。 由 于 Applet中 没 有main()方 法 作 为 Java解 释 器的 入 口 ,我 们 必 须 编 写 HTML文 件 ,把 该 Applet嵌 入 其 中 ,然 后 用 appletviewer来 运 行 ,或 在支 持 Java的 浏 览 器 上 运 行 。 它 的 <HTML>文 件 如 下 :
<HTML>
<HEAD>
<TITLE> An Applet </TITLE>
</HEAD>
<BODY>
<applet code="HelloWorldApplet.class" width=200 height=40>
</applet>
</BODY>
</HTML>
其 中 用 <applet>标 记 来 启 动 HelloWorldApplet,code指 明字 节 码所 在 的 文 件 ,width和height指 明 applet所 占 的 大 小 ,我 们 把 这 个 HTML文 件 存 入Example.html,然 后 运 行 :
C:\>appleviewer Example.html
这 时 屏 幕 上 弹 出 一 个 窗 口 ,其 中 显 示 Hello World!,显 示 结 果如 图 :
从 上 述 例 子 中 可 以 看 出 ,Java程 序 是 由 类 构 成 的 ,对 于 一 个应 用 程 序 来 说 ,必 须有 一 个 类 中 定 义 main()方 法 ,而 对 applet来 说 ,它 必 须 作 为 Applet的一 个 子 类 。 在 类 的 定 义 中 ,应 包 含 类 变 量 的 声 明 和 类 中 方 法 的 实 现 。 Java在 基 本 数据 类 型 、 运 算 符 、 表达 式 、 控 制 语 句 等 方 面 与 C、 C++基 本 上 是 相 同 的 ,但 它 同 时 也增 加 了 一 些 新 的 内 容 ,在 以 后 的 各 章 中 ,我 们 会 详 细 介 绍 。 本 节 中 ,只 是 使 大 家 对Java程 序 有 一 个 初 步 的了 解 。
转载于:https://www.cnblogs.com/toujizhe/articles/2956603.html
§ 1.3 简 单 的 Java程 序相关推荐
- 在oracle 中编写一个程序,用VC 开 发 基 于ORACLE 数 据 库 应 用 程 序 的 两 种 方 法...
用VC 开 发 基 于ORACLE 数 据 库 应 用 程 序 的 两 种 方 法 北 京 航 空 航 天 大 学 计 算 机 科 学 与 工 程 系 黎 杰 麦 中 凡 ---- 1. 引 言 -- ...
- 单链表的逆序java_java 实现单链表的逆序
package com.ckw.mianshi; /** * java 实现单链表的逆序 * @author Administrator * */ public class SingleLinkedR ...
- 浅谈:数据结构之单链表,java代码演示单链表
单链表 本文是观看尚硅谷韩老师视频学习总结,部分来源网络. 单链表介绍 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每 ...
- Java字节序,java整型数与网络字节序 byte[] 数组转换关系(ByteArrayOutputStream用法)
Java字节序 http://origin100.iteye.com/blog/267165 /** * 通信格式转换 * * Java和一些windows编程语言如c.c++.delphi所写的网络 ...
- Java字节序,java整型数与网络字节序 byte[] 数组转换关系
Java字节序 http://origin100.iteye.com/blog/267165 /** * 通信格式转换 * * Java和一些windows编程语言如c.c++.delphi所写的网络 ...
- 简 易 版 线 程 池 模 型 学 习
简 易 版 线 程 池 模 型 学 习 1.简易版线程池流程 1.初始化线程池 1.初始化队列, 队列头, 队列尾初始化, 队列能力初始化( 队列长度),队列锁 初始化线程池条件变量,给子线程赋入口函 ...
- java不带头结点单链表,java带头结点的单链表
JAVA 循环双链表的建立 import java.util.Scanner; //循环双向链表的结点类 class DuLNode { private Object data;// 存放结点值 前驱 ...
- java异常处理机简答题,【简答题】JAVA 语言如何进行异常处理,关键字: throws,throw,try,catch,finally 分别代表什么意义?...
[简答题]JAVA 语言如何进行异常处理,关键字: throws,throw,try,catch,finally 分别代表什么意义? 更多相关问题 用蒸汽进行设备管线吹扫时,应将被吹扫的设备管线,相应 ...
- [Leetcode][第106题][JAVA][ 从中序与后序遍历序列构造二叉树][分治][递归]
[问题描述][中等] [解答思路] public class Solution {public TreeNode buildTree(int[] inorder, int[] postorder) { ...
- C++实现单链表的反序
引言 将一个没有空结点作为头的单链表实现反转.其实质就是将结点的指针域指向反转.定义指向当前结点的指针,指向前一个结点的指针,指向当前结点的后一个结点的指针,这个过程中包含只有一个结点的单链表,那么反 ...
最新文章
- 加密解密php,PHP实现的加密解密处理类
- 创建型模式之Prototype
- GDCM:独特的uid测试程序
- Android快捷键
- 【Python 19】BMR计算器3.0(字符串分割与格式化输出)
- 2021年第3周人工智能方向的周报
- 回到顶部和回到底部动画
- MySQL(20)--- 排序
- hibernate id生成策略 mysql_Hibernate中ID生成策略
- lbs与gis的计算机存储模式,基于GIS的移动终端LBS系统建设与实现
- Ubuntu下hadoop2.4搭建集群(单机模式)
- window热敏打印机驱动安装
- audio驱动之耳机
- shell 特殊符号大全
- VirtualLab基础实验教程-7.偏振(2)
- json数组删除重复项
- 安卓bmi项目_身高体重指数计算器手机版|bmi体重指数计算器安卓版下载 v1.0.0 - 跑跑车安卓网...
- pixhawk 模拟飞行
- JavaScript学习手册(12)
- Vmware与主机间共享文件的n种方法(附图+详解)
热门文章
- 程序员至少一半时间用于测试
- 深度学习框架间互操作的工具:MMdnn
- ios添加全局悬浮按钮_MIUI10快报:全局透明壁纸上线,本地视频支持设为锁屏壁纸...
- frx表格怎样调单元格大小_前端之HTML+CSS表格的写法
- 计算机网络苏州大学题库,苏州大学计算机网络样卷B[计科大类].doc
- matlab朴素贝叶斯手写数字识别_「深度学习系列」PaddlePaddle之手写数字识别
- 3G dual band 使用策略
- 轮播图的效果实现小米商城和京东商城
- Confluence 6 针对大数据量备份
- LRU缓存介绍与实现 (Java)