HelloWorld Java

文章目录

  • HelloWorld Java
    • 一、HelloWorld程序
    • 二、逐行分析HelloWorld
      • 1.程序的第一行定义了一个类
      • 2.程序的第二行定义主方法( main method)
      • 3.程序的第三行是注释
      • 4.程序第四行调用println方法
      • 5.程序块和代码风格
    • 三、命令行编译运行Java程序
      • 1.编译
      • 2.运行
      • 3.提示
    • 四、程序设计错误
      • 1.语法错误
      • 2.运行时错误
      • 3.逻辑错误
      • 4.常见错误
    • 五、Java程序整体分析
      • 1.Class类
      • 2.Main函数

一、HelloWorld程序

HelloWorld.java:

/*** This is the first Java program* @version 1.01 2021.4.2* @author bk*/
public class HelloWorld {public static void main (String[] args) {// Display message HelloWorld on the consoleSystem.out.println("HelloWorld");}
}

二、逐行分析HelloWorld

1.程序的第一行定义了一个类

  • 类名为HelloWorld。每个 Java 程序至少应该有一个类。每个类都有一个名宇。按照惯例,类名都是以大写字母开头的。

  • 关键字 public 称为访问修饰符 (access modifier),这些修饰符用于控制程序的其他部分对这段代码的访问级别。

  • 关键字 class 表明 Java 程序中的全部内容都包含在类中。

  • 关键字 class 后面紧跟类名HelloWorld,Java 中定义类名的规则很宽松 名字必须以字母开头,后面可以跟字母和数字的任意组合 长度基本上没有限制 但是不能使用 Java 保留字。

    (命名规范:类名是以大写字母开头的名词,如果名字由多个单词组成,每个单词的第 个字母都应该大写)

2.程序的第二行定义主方法( main method)

  • 程序是从 main 方法开始执行的。一个类可以包含几个方法。main 方法是程序开始执行的人口。运行已编译的程序时, Java 虚拟机将从指定类中的 main 方法开始执行。
  • static表明main方法是静态的(Java中的 main 方法必须是静态的)。根据 Java 语言规范, main 方法必须声明为 public。
  • 1.main方法是一个特殊的方法:如果像前面那样声明类的m ain方法,那么,当我们把类作为应用程序运行时,它就会被执行。在运行时,main 方法能够创建对象、为表达式求值、调用其他方法,以及完成为定义应用程序行为所需要的其他任何事情。
  • 2.main 方法被声明为public ,这样Java 虚拟机中的任何对象都能调用它;同时它也被声明为static ,这意味着该方法属于类本身,而不与类的特定实例相关联。
  • 3.方法名前面是方法的返回类型。main 方法声明为void 的,因为它不返回任何值,也就没有返回类型。
  • 4.方法名后面是方法的参数( parameter )列表一零个和多个的类型与名字对,彼此间用逗号隔开,整个包含在 ()之间。main 方法仅有的一个参数是String 对象的数组,由名字args引用。对象数组以类型名后面加[]的形式表示。从命令行调用该程序时,args 包含所带的自变量( argument )

3.程序的第三行是注释

在程序的开头写一个总结,解释一下这个程序是做什么的、其主要特点以及所用到的独特技术。在较长的程序中还要加上注释,介绍每一个主要步骤并解释每个难以读懂之处。注释写得简明扼要是很重要的,不能让整个程序都充满注释而使程序很难读懂。

Java 中的 注释也不会出现在可执行程序中,因此可以在源程序中根据需要添加任意多的注释, 而不必担心可执行代码会膨胀 Java ,有3种标注释的方法:

  • 单行注释:以//开始
  • 块注释:以/*开始,以*/结束
  • Java文档注释(javadoc comment):注释以 /** 开始,以 */结尾。它们能使用JDK 的 javadoc 命令提取成一个 HTML文件

4.程序第四行调用println方法

  • System.out.println 语句在控制台上打印消息 “HelloWorld”
  • "HelloWorld"是字符串,字符串(string) 是一个编程术语,表示一个字符序列。
  • Java 中的每条语句都以分号( ;)结束,也称为语句结束符(statement terminator)。

5.程序块和代码风格

  • 1.缩进
    保持一致的缩进风格会使程序更加清晰、易读、易于调试和维护。缩进(identation )用于描述程序中组成部分或语句之间的结构性关系。
  • 2.代码块
  • 源代码中的括 {}划分程序的各个部分(通常称为块) Java 中任何方法的代码都用 " { "开始,用 " } "结束。
    块的写法有两种常用方式:次行(next-line) 风格和行尾(end-of-line) 风格:

    • 次行(next-line) 风格:

      次行风格将括号垂直对齐,因而使程序容易阅读

      public class Test public class Test
      { public static void main(String[] args) {System.out.println("Block Styles"); }
      }
      
    • 行尾(end-of-line) 风格:

      行尾风格更节省空间,并有助于避免犯一些细小的程序设计错误

      public class Test public class Test { public static void main(String[] args) {System.out.println("Block Styles"); }
      }
      

三、命令行编译运行Java程序

Java 源程序保存为 .java 文件,编译为 .class 文件。.class 文件由 Java 虚拟机(JVM)执行

1.编译

  • 使用javac命令编译文件(生成HelloWorld.class字节码文件)

    javac HelloWorld.java
    

2.运行

  • 使用java命令运行

    java HelloWorld
    

3.提示

  • 源代码的文件名必须与公共类的名字相同,并用 java 作为扩展名。
  • 在命令行执行程序时,不要使用扩展名 .class。使用 java ClassName 来运行程序
  • 如果要运行一个不存在的类,就会出NoClassDefFoundError 的错误

在执行一个 Java 程序时,JVM 首先会用一个称为类加载器(class loader) 的程序将类的字节码加栽到内存中。如果你的程序中使用其他类,类加栽程序会在需要它们之前动 态地加栽它们。当加栽该类后,JVM使用一个称为字节码验证器( bytecode verifier) 的程 序来检验字节码的合法性,确保字节码不会违反 Java 的安全规范。

四、程序设计错误

1.语法错误

在编译过程中出现的错误称为语法错误( syntax error) 或编译媒误(compile error)。语法错误是由创建代码时的错误引起的。

2.运行时错误

运行时错误( runtime error) 是引起程序非正常中断的错误。运行应用程序时,当环境检测到一个不可能执行的操作时,就会出现运行时错误。

3.逻辑错误

当程序没有按预期的方式执行时就会发生逻辑错误( logic error )。

4.常见错误

  • 常见错误 1: 遗漏右括号
    括号用来标识程序中的块。每个左括号必须有一个右括号匹配。常见的错误是遗漏右括号。
  • 常见错误 2: 遗漏分号
    每个语句都以一个语句结束符( ;)结束。
  • 常见错误 3: 遗漏引号
    字符串必须放在引号中
  • 常见错误 4: 命名拼写错误
    Java 区分大小写 如果出现了大小写错误(例如,将 main 写成Main)程序将无法运行。

五、Java程序整体分析

1.Class类

• Java文件必须以.java作为扩展名
• 一个Java文件只能有一个public class
• public class的名字必须和文件名字一样,大小写都要完全一致
• 一个文件可以有多个class,但是只能有一个是public。不提倡一个文件里面放多个类(内部类除外)
• 类是Java中的最基础逻辑单位

  • Java所有的内容都是需要放在类的范围中
  • 内容不允许游离在类以外
  • 换言之,Java项目就是由一个个类组成的

• 类的构成

  • 成员变量/属性
  • 成员方法/函数

2.Main函数

• 一个class最多只能有一个main函数。类可以没有
main函数,没有main函数的类就不能主动执行,但
可以被动执行(被别人调用执行)。
• 程序的入口都是main函数,这点和C/C++一致。有
一点不同的是,Java要求所有程序都必须放在类对
象中,即所有的代码都要放在class的所辖范围内。
• main函数的形参和前缀修饰符public、static、void等都不能省略,是固定写法。可简单记忆为PSVM
• 严格意义上说,main函数不属于这个类的所拥有
函数。
• 只是因为Java要求所有的内容都必须放置在class的
范围内,所以main函数“寄居”在某一个class中。
• main函数是一个Java程序的总入口。
• main函数也无法被其他方法/类所调用。
• 一个Java程序可以调用多个其他Java class。
• String[] args是main函数的形参,即在main函数中可
以使用args的值。

【JAVA程序设计】从HelloWorld开始相关推荐

  1. Java程序设计经典习题15道

    Java程序设计总复习题 1.编写一个Java程序在屏幕上输出"你好!".(p13,例1-1) //programme name Helloworld.java public cl ...

  2. java程序设计实验报告_JavA程序设计实验报告.doc

    Java程序设计实验报告 学号: 姓名: 座位号: 实验日期: [实验名称]: JDK配置与开发工具的使用 [实验目的]: 熟悉JDK开发环境. 熟悉EditPlus编辑器或Eclipse等开发环境的 ...

  3. 2019-2020-3 《Java 程序设计》第三周知识总结

    2019-2020-3 <Java 程序设计>第三周知识总结 1.类的定义 语法格式如下(加[]表示可选项): [修饰符] class 类名 { 属性定义(声明) 方法定义(声明)} 2. ...

  4. 【渝粤题库】陕西师范大学201941 Java程序设计 作业(专升本)

    <JAVA程序设计>作业 一.选择题 编译HelloWorld.java的正确命令是: java HelloWorld.class B)java HelloWorld.java C)jav ...

  5. 渝粤教育 陕西师范大学 《JAVA程序设计》作业

    <JAVA程序设计>作业 一.选择题 编译HelloWorld.java的正确命令是: java HelloWorld.class   B)java HelloWorld.java   C ...

  6. 20145209刘一阳《JAVA程序设计》第1周学习总结

    20145209刘一阳<JAVA程序设计>第1周学习总结 本周任务 了解Java基础知识 了解JVM.JRE与JDK,并下载.安装.测试JDK 了解PATH.CLASSPATH.SOURC ...

  7. 【知识索引】【Java程序设计】

    Java程序设计知识索引 本文为[Java程序设计]知识索引 文章目录 Java程序设计知识索引 一.Java入门:第一个Java程序 1.[JAVA程序设计]从HelloWorld开始 二.Java ...

  8. java期末考试B卷题及答案,《JAVA程序设计》期末试题B卷

    <JAVA程序设计>期末试题B卷 班级:_________________ 学号:_________________ 姓名:_________________任课教师:__________ ...

  9. 2018-2019-2 20175227张雪莹《Java程序设计》

    2018-2019-2 20175227张雪莹<Java程序设计> 实验四 <Android程序设计> 实验报告封面 课程:Java程序设计 班级:1752班 姓名:张雪莹 学 ...

最新文章

  1. 配置 腾讯云 SSL 证书 SSL证书实现https,环境:phpStudy下Apache环境
  2. [Android]webview直接加载网页允许JS,进度条,当前应用内跳转
  3. 1011 World Cup Betting (20 分)_14行代码AC
  4. 无人机图像处理工具-亮度、对比度、饱和度调整/匀光匀色/图像去雾
  5. CSS3动画(典型模板)
  6. Java POI 读取Excel-从开始到实例
  7. java线程中断和终止线程运行
  8. 文件系统中,Path和Directory的区别
  9. 无人机——凤凰模拟器篇(五)遥控器的配置教程
  10. 备考OCJP认证知识点总结(五)
  11. java中一行代码实现百分数计算
  12. 红帽子企业版.Linux.5
  13. 1129 - 喵哈哈村的战斗魔法师丶坏坏い月 线段树
  14. 2016.3.16__CSS3_选择器_边框_背景_蒙版mask__第九天
  15. fastdfs上传文件的简易方法
  16. mosquitto入门教程
  17. mysql 大批量数据查询_mysql 处理 多条件 大批量数据 查询
  18. TensorFlow入门之二:tensorflow手写数字识别
  19. 2022,程序员应该如何找工作
  20. Android 距离感应器和耳机状态监测(控制Audio输出通道切换)

热门文章

  1. 找不到ffmpeg.dll无法继续执行代码怎么办_2020年,小规模增值税3%减按1%征收,那么一般纳税人该怎么办?...
  2. c语言 wchar_t,一个【wchar_t】引发的学案
  3. oracle plsql update两个字段_Oracle 学习笔记(Windows 环境下安装 + PL/SQL)
  4. 英雄多少钱steam_Steam农历新年特卖:越来越火热的中国单机游戏市场 | 游戏干线...
  5. HarmonyOS竞赛,2021全国大学生物联网设计竞赛正式开赛,全新HarmonyOS赛题引关注...
  6. 先根序列创建二叉树c语言,用C语言创建二叉树并先序遍历.doc
  7. java 冒泡算法_关于java中的冒泡算法
  8. python matplotlib 保存图片失真_Python matplotlib线框失真
  9. python中不能使用下标运算的是_下列选项中,不能使用下标运算的是() (3.0分)_学小易找答案...
  10. php7 findandmodify,node.js – (mongoose / promises)如何检查文档是否是使用带有upsert的findOneAndUpdate创建的...