Java程序结构与常量变量难点解析

 更新时间:2021年10月25日 15:43:23   作者:波风张三  
JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构

前言

新征程,进入java的学习。
给自己定下一个铁律:
学习,刷题。

一、java程序结构

下面先上一个最简单的java程序:

public class HelloWorld{
	public static void main(String[] args){

		System.out.println("hello");
	}
}

接下来,我们分析一下java这个程序的结构。
首先,Java 区分大小写。 如果出现了大小写拼写错误(例如, 将 main 拼写成 Main),程序将无法运行。

又例如(String[] args)中的S要大写,我刚写这个程序就被没有大小写的细节搞到浪费了好多时间,请大家一定要注意。

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

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

关键字 class 后面紧跟类名。

一个Java程序的结构由如下三个部分组成:

1.源文件(扩展名为*.java):源文件带有类的定义。类用来表示程序的一个组件,小程序或许只会有一个 类。类的内容必须包含在花括号里面。
2.类:类中带有一个或多个方法。方法必须在类的内部声明。
3.方法:在方法的花括号中编写方法应该执行的语句。

【总结】
类存在于源文件里面;方法存在于类中;语句存在于方法中。

二、java程序的运行

1.运行过程

Java程序运行的流程如下图:

在这里插入图片描述

所有的Java源代码(以.java为扩展名),通过Java编译器javac变成字节码,也就是以.class为扩展名的文件。然后利用命令Java讲对应的字节码通过java虚拟机(JVM)解释为特定操作系统,如Windows,Linux等能理解的机器码,最终Java程序得以运行。

在这里插入图片描述

2.JVM是什么?

JVM就是Java虚拟机。

我们可以理解为在机器和编译程序之间加入了一层抽象的虚拟机器,这个虚拟机器在任何平台都提供给编译一个共同的接口。

编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换成特定的系统代码执行。

下面解释两个东西:

JRE(Java Runtime Environment):Java运行时环境,包含了JVM,Java基础类库。是使用Java语言编写程序运行的所需环境。
JDK(Java Development Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。

那么JRE JDK JVM的三者关系如何?
如图:

在这里插入图片描述

三、常量与变量

1. 计算机工作原理

说到计算机原理,就不得不提一个人——冯·诺依曼。被称为计算机之父。

著名的冯·诺伊曼设计思想如下:
1、计算机由运算器、控制器、存储器、输入设备、输出设备组成。五大部件通过系统总线连接。

在这里插入图片描述

【解释】
当输入设备向总线输入指令时,CPU获取该指令并处理。当CPU处理指令时,CPU调用内存储器的数据以便进行控制和计算,最后将计算结果发送给输出设备或外存储器。

当内存储器中的数据需要从外存储器中读取时,外存储器将数据送往总线,在CPU的控制下,内存储器再将该数据进行存储。

2、计算机内部采用二进制表示指令和数据

3、将编好的程序送入内存储器中,让程序来指挥计算机自动逐条取出指令和执行指令。其核心是“存储程序和程序控制”。

2.变量和类型

变量是利用声明的方式,将内存中的某个内存块保留下来以供程序使用,其内的值是可变的。

声明变量的作用

1、指定在内存中分配空间的大小
2、规定这个变量所能接受的运算

3.变量的命名规则

1、变量名可由任意顺序的大小写字母、数字、下划线(_)和美元符号($)(非常不建议使用)等组成
2、变量名不能以数字开头
3、变量名不能是Java中的保留关键字

4.变量的作用范围

作用范围有时也称为作用域
按作用范围划分,变量分为成员变量和局部变量

【成员变量】
在类中定义的变量为成员变量。它的作用范围是整个类。也就是说在这个类中都可以访问到定义的这个成员变量。

public class HelloWorld{
	static int a=10;//定义一个成员变量
	public static void main(String[] args){

		int num=10;
		System.out.println("num");
	}
}

【局部变量】
在一个函数(或称方法)或函数代码块仲定义的变量称为局部变量,局部变量在函数或代码块被执行时创建,在函数或代码块结束时被销毁。

public class HelloWorld{
	static int a=10;//定义一个成员变量
	public static void main(String[] args){

		int num=10;//定义一个局部变量
		System.out.println("num");
	}
}

【注意】局部变量在进行取值操作前必须被初始化或赋值操作,否则会出现编译错误!

总结

数据类型那一部分的内容想了想,还是不要拆开来写博客,于是我打算在整一节学完之后,再给大家整理。这次就先整理这么多内容。

到此这篇关于Java程序结构与常量变量难点解析的文章就介绍到这了,更多相关Java 程序结构内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java使用EasyExcel实现合并单元格

    java使用EasyExcel实现合并单元格

    这篇文章主要为大家详细介绍了java使用EasyExcel实现合并单元格的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • java使用udp实现简单多人聊天功能

    java使用udp实现简单多人聊天功能

    这篇文章主要为大家详细介绍了java使用udp实现简单多人聊天功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Java生成验证码功能实例代码

    Java生成验证码功能实例代码

    页面上输入验证码是比较常见的一个功能,实现起来也很简单.给大家写一个简单的生成验证码的示例程序,需要的朋友可以借鉴一下
    2017-05-05
  • 关于SpringBoot中的XA事务详解

    关于SpringBoot中的XA事务详解

    这篇文章主要介绍了关于SpringBoot中的XA事务详解,事务管理可以确保数据的一致性和完整性,同时也可以避免数据丢失和冲突等问题。在分布式环境中,XA 事务是一种常用的事务管理方式,需要的朋友可以参考下
    2023-07-07
  • Springboot jpa使用sum()函数返回结果如何被接收

    Springboot jpa使用sum()函数返回结果如何被接收

    这篇文章主要介绍了Springboot jpa使用sum()函数返回结果如何接收,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • javaWEB中前后台乱码问题的解决方法总结

    javaWEB中前后台乱码问题的解决方法总结

    下面小编就为大家带来一篇javaWEB中前后台乱码问题的解决方法总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Java web实现购物车案例

    Java web实现购物车案例

    这篇文章主要为大家详细介绍了Java web实现购物车案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • Spring Data JPA 在 @Query 中使用投影的方法示例详解

    Spring Data JPA 在 @Query 中使用投影的方法示例详解

    这篇文章主要介绍了Spring Data JPA 在 @Query 中使用投影的方法,大家需要注意如果要在 @Query 中使用投影,必须要主动声明要查询的字段,并且主动写明字段的别名才行,本文通过sql代码给大家介绍的非常详细,需要的朋友参考下吧
    2022-07-07
  • Java中常用的五种List声明并赋值操作方式

    Java中常用的五种List声明并赋值操作方式

    在Java编程中经常会使用到集合类来存储和操作多个元素,List是一种常见的集合类,它允许存储重复的元素,并且保持元素的插入顺序,这篇文章主要给大家介绍了关于Java中常用的五种List声明并赋值操作的相关资料,需要的朋友可以参考下
    2024-02-02
  • Java多线程之线程池七个参数详解

    Java多线程之线程池七个参数详解

    这篇文章主要介绍了Java多线程之线程池七个参数详解,文中有很详细的代码示例,对正在学习java的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-04-04

最新评论