Hello World启示录:Java编程的起点

news2024/10/7 4:51:16

在这里插入图片描述

  • 👑专栏内容:Java
  • ⛪个人主页:子夜的星的主页
  • 💕座右铭:前路未远,步履不停

目录

  • 一、Java基本结构
    • 1、一个简单的Java程序
    • 2、运行Java程序
    • 3、JDK | JRE | JVM之间的关系
  • 二、代码注释标准
    • 1、注释规则
    • 2、注释规范


嗨!让我们以一段简单到爆炸的Java代码开始吧,它的效果是输出:Hello World!当然,这段代码简单得让你可能会想说:“这就是Java?我还以为要写个小说呢!”但请你别担心,我们将通过分析这段世界上最简单的Java代码,慢慢带你揭开Java语言的神秘面纱。

图片描述

一、Java基本结构

1、一个简单的Java程序

public class HelloWorld {  
    public static void main(String[] args) { 	
        System.out.println("Hello World!");		
    }
}
//这就是一段最简单的Java代码

下面让我们来逐行学习这段Java代码。

第一行是public class HelloWorld,这是一个类的开始声明,表示这个类名为HelloWorld,其中public是访问修饰符,表示这个类是公共的,可以被其他类访问。

接下来是public static void main(String[] args) 这是一个特殊的方法,被称为main方法,它是一个Java程序的入口,它是程序开始执行的地方。

最后是System.out.println("Hello World !")。这行代码的作用就是输出HelloWorld!
System:这是 Java 编程语言提供的一个类。这个类包含了对Java 应用程序环境的访问,以及标准输入、输出和错误输出流等功能。out表示 System 类中的标准输出流。可以使用 System.out 来访问这个输出流对象。println表示将输出的内容打印到输出流上,并且在结尾处自动添加一个换行符。这是 println 两个方法的组合。

图片描述

差点忘记解释这个了,这个在后面的类和对象中我们会详细的说明。先简单的说一下,class是Java中的关键字,它的作用是告诉Java,我们要现在要定义一个新的类。例如public class HelloWorld 就说在告诉Java,我现在要定义一个名叫HelloWorld的类了。

2、运行Java程序

相信看了上面的解释,你已经弄明白了一段Java代码长什么样。下面让我们一起了解一下,Java代码是如何运行起来的吧!
注意:在运行Java程序前,请必须先安装好JDK,后面再解释什么是JDK。
首先,Java代码需要被编译器(Javac)翻译成字节码。这个过程称为编译。编译器会检查代码的语法和语义,确保它们符合Java语言规范。一旦代码被成功编译,将生成一个字节码文件(.class文件)。接下来,Java虚拟机(JVM)将负责执行这些字节码。

在这里插入图片描述

JVM是Java的核心组件之一,它是一个运行时环境,负责加载字节码并执行相应的操作。JVM提供了内存管理、垃圾回收、线程管理等功能,使得Java程序可以在不同的操作系统上运行。当Java程序运行时,JVM会加载并解释字节码指令。它会按照指令的顺序执行代码,从而实现程序的逻辑。

在这里插入图片描述

图片描述

3、JDK | JRE | JVM之间的关系

  • JDK(Java Development Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsolejstack等。
  • JRE(Java Runtime Environment):Java运行时环境,包含了JVMJava基础类库。是使用Java语言编写程序运行的所需环境。
  • JVM:Java虚拟机,运行Java代码。
    在这里插入图片描述

图片描述

二、代码注释标准

在Java中,// 是用来表示单行注释的符号。当你在代码中使用//时,它之后的所有内容都会被视为注释,直到这一行结束。这样,你可以在代码中添加一些有用的注释,解释代码的功能、实现细节,或者提醒自己或其他程序员一些重要的事项。注释是为了让代码更容易被读懂而附加的描述信息,不参与编译运行,但是却非常重要时刻牢记

1、注释规则

Java中的注释主要分为以下三种:

  • 单行注释://注释内容
  • 多行注释:/* 注释内容*/
  • 文档注释: /** 文档注释 */(常见于方法和类之上描述方法和类的作用),可以被javadoc工具解析,生成一套以网页文件形式体现的程序说明文档。

注意:

  • 多行注释不能嵌套使用。
  • 不论是单行还是多行注释,都不参与编译,即编译之后生成的.class文件中不包含注释信息。

2、注释规范

  • 内容准确: 注释内容要和代码一致, 匹配, 并在代码修改时及时更新。

  • 篇幅合理: 注释既不应该太精简,也不应该长篇大论。

  • 积极向上: 注释中不要包含负能量。

Java入门第一篇就讲到这里了,希望通过这篇文章,能让你对Java有了更清晰的认识,并对如何编写简单的Java程序有了初步的了解。后续会持续更新其他Java内容,请保持关注哦。

图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1038266.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

git | 合并merge、衍合rebase与同步更新cherry-pick

git | 合并merge、衍合rebase与同步更新cherry-pick 文章目录 git | 合并merge、衍合rebase与同步更新cherry-pickgit meregegit rebasegit rebase和git merge的区别总结 cherry-pick 把别的分支的改动内容同步更新到自己的分支Example: Reference 欢迎关注公众号“三戒纪元” …

外卖霸王餐系统 美团试吃系统-代理系统

微客云免费提供外卖霸王餐系统,支持分站、运营商、商家后台、独立域名,自定义品牌,自主收款。 想做霸王餐的可以参考下联系微客云。地址:微客云 - 淘宝客CMS,公众号,小程序,淘客APP,外卖返利CPS,私域电商系统 分站后台演示&…

学信息系统项目管理师第4版系列11_信息安全管理

1. 信息安全基础 1.1. 保密性(Confidentiality) 1.1.1. 信息不被未授权者知晓的属性 1.1.2. 确保信息不暴露给未授权的实体或进程 1.2. 完整性(Integrity) 1.2.1. 信息是正确的、真实的、未被篡改的、完整无缺的属性 1.2.2. 只有得到允许的人才能修改数据&…

React中的受控组件(controlled component)和非受控组件(uncontrolled component)

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 组件⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是…

【李沐深度学习笔记】自动求导

课程地址和说明 自动求导p1 本系列文章是我学习李沐老师深度学习系列课程的学习笔记,可能会对李沐老师上课没讲到的进行补充。 吸取上一次写文章的经验,这次公式部分尽量采用直接截图,不用lateX,用lateX有一些浪费时间 自动求导…

MySQL 的 C 语言接口

1. mysql_init MYSQL *mysql_init(MYSQL *mysql); mysql_init函数的作用:创建一个 MYSQL 对象(该对象用于连接数据库)。 mysql_init函数的参数: ① mysql:MYSQL 结构体指针,一般设置为 NULL 。 mysql_init函…

国产5G手机20天销量不及苹果一天,被iPhone15按在地上摩擦

iPhone15的上市销售,最大竞争对手无疑是国产5G手机,如今iPhone15上市首日的销量数据也已经出炉,高达200万台,这比国产5G手机卖20天的销量还要多,iPhone15让国产手机领教了什么叫遥遥领先。 据了解苹果对iPhone15的预期…

【动手学深度学习-Pytorch版】门控循环单元GRU

关于GRU的笔记 支持隐状态的门控:这意味着模型有专门的机制来确定应该何时更新隐状态, 以及应该何时重置隐状态。 这些机制是可学习的,并且能够解决了上面列出的问题。 例如,如果第一个词元非常重要, 模型将学会在第一…

SpringMVC基础(一)——Servlet简介

1. Hello Servlet (1) 创建父工程 删除src文件夹 引入一些基本的依赖 <!--依赖--> <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test<…

Spring学习笔记8 Bean的循环依赖问题

Spring学习笔记7 Bean的生命周期_biubiubiu0706的博客-CSDN博客 什么是Bean的循环依赖 A对象中有B属性,B对象中有A属性.这就是循环依赖,我依赖你,你依赖我。你侬我侬 这种情况下会不会出问题? 1.singleton下的set注入产生的循环依赖 2.prototype下的set注入产生的循环依赖 B…

010_第一代软件开发(二)

第一代软件开发(二) 文章目录 第一代软件开发(二)项目介绍界面布局功能完善快照功能获取可用串口播放按键提示音 关键字&#xff1a; Qt、 Qml、 QSerialPort、 QPixmap、 QSoundEffect 项目介绍 欢迎来到我们的 QML & C 项目&#xff01;这个项目结合了 QML&#xff…

论文《Enhancing Hypergraph Neural Networks with Intent Disentanglement for SBR》阅读

论文《Enhancing Hypergraph Neural Networks with Intent Disentanglement for Session-based Recommendation》阅读 IntroductionPreliminaries问题形式化Hypergraph Methodology嵌入层 &#xff08;Intent-Aware Embedding&#xff09;会话超图构建 微观解耦宏观解耦预测层模…

SpringMVC+入门案例

一、入门案例 1.依赖导入 <!--1. 导入SpringMVC与servlet的坐标--> <dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scop…

postgresql-数据库与模式

postgresql-数据库 基本概念创建数据库修改数据库删除数据库管理模式 基本概念 数据库管理系统&#xff08;DBMS&#xff09;是用于管理数据库的软件系统。常见的关系型DBMS有PostgreSQL、 MySQL、Oracle、Microsoft SQL Server、SQLite 等。常见的 NoSQL 数据库有 Redis、Mon…

vue3-ts-vite:Google 多语言调试 / 翻译

一、实现目标 二、代码实现 2.1、项目vue3 - ts - vite 2.2、index.html 引入文件 <script>window.onload function () {const script document.createElement(SCRIPT)script.src https://translate.google.com/translate_a/element.js?cbgoogleTranslateElementI…

kr 第三阶段(六)C++ 逆向

结构体 结构体对齐 设置结构体对齐值 方法1&#xff1a;在 Visual Studio 中可以在 项目属性 -> 配置属性 -> C/C -> 所有选项 -> 结构体成员对齐 中设置结构体对齐大小。方法2&#xff1a;使用 #pragma pack(对齐值) 来设置&#xff0c;不过要想单独设置一个结…

2023 “华为杯” 中国研究生数学建模竞赛(D题)深度剖析|数学建模完整代码+建模过程全解全析

问题一&#xff1a;区域碳排放量以及经济、人口、能源消费量的现状分析 思路&#xff1a; 定义碳排放量 Prediction 模型: CO2 P * (GDP/P) * (E/GDP) * (CO2/E) 其中: CO2:碳排放量 P:人口数量 GDP/P:人均GDP E/GDP:单位GDP能耗 CO2/E:单位能耗碳排放量 2.收集并统计相关…

vuereact质检工具(eslint)安装使用总结

1、ESLint ESLint工具主要类似java中的checkStyle和findbugs&#xff0c;是检查代码样式和逻辑规范的工具。 1.1、ESLint安装流程 打开VSCode软件&#xff0c;打开扩展中心&#xff0c;下载ESLint插件 图1.1 点击后面的install按进行安装&#xff0c;如图1.2所示&#xff1…

MySQL(8) 优化、MySQL8、常用命令

一、MySQL优化 从上图可以看出SQL及索引的优化效果是最好的&#xff0c;而且成本最低&#xff0c;所以工作中我们要在这块花更多时间。 服务端参数配置&#xff1b; max_connections3000 连接的创建和销毁都需要系统资源&#xff0c;比如内存、文件句柄&#xff0c;业务说的支持…

代码随想录算法训练营第四十二天| 01背包问题,你该了解这些! 01背包问题,你该了解这些! 滚动数组 416. 分割等和子集

正式开始背包问题&#xff0c;背包问题还是挺难的&#xff0c;虽然大家可能看了很多背包问题模板代码&#xff0c;感觉挺简单&#xff0c;但基本理解的都不够深入。 如果是直接从来没听过背包问题&#xff0c;可以先看文字讲解慢慢了解 这是干什么的。 如果做过背包类问题&…