【JAVA程序设计】从HelloWorld开始

HelloWorld Java

在这里插入图片描述

一、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 console
        System.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的值。

  • 14
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BkbK-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值