”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > System.out.println(\"Java简介\")

System.out.println(\"Java简介\")

发布于2024-07-31
浏览:704

System.out.println(\

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

冗长的语言?

当我们开始学习Java并查看上面的代码时,我们可能会对打印一个简单的Hello, World!所需的字数感到有点害怕。这有时会给人一种很难的语言的印象,这会阻碍初学者从一开始就更深入地探索它,从而在没有更深入地理解该语言的情况下产生一种偏见。

这些词是什么:public、class、static、void、main...

当我们执行上面的代码时,Java虚拟机(JVM)会查找主块并执行它。通常,应用程序只有一个这种类型的方法,顾名思义:应用程序的主方法,起点。

public 是一个访问修饰符,指示 HelloWorld 类的类型,允许任何其他包访问它。除此之外,还有 protected 和 private 修饰符,这个稍后再讨论。

class 是用于指示类的保留字,在本例中为 HelloWorld。重要的是要记住,类名必须与定义它的 Java 文件的名称相匹配(在本例中为 HelloWorld.java)。

static 表示 main 方法属于 HelloWorld 类本身,而不属于该类的特定实例。这意味着无需创建 HelloWorld 类的对象即可调用该方法。

void是main方法的返回类型,表示该方法不返回任何值。

String[] args 是main方法的参数。 args 是一个字符串数组,允许您在 Java 程序运行时将命令行参数传递给它。

理解了这些定义,我们就可以明白Java是一种命令式[​​&&&]语言。与声明性语言不同,在声明性语言中,我们说出我们想要的内容,语言决定如何执行该过程,在命令式语言中,我们需要提供有关如何执行该过程的说明。这给我们带来了一些好处,比如:

  1. 执行流程的详细控制:在命令式语言中,我们可以明确地控制程序如何执行每一步。这对于程序员准确了解正在发生的情况并优化代码性能很有用。

  2. 易于调试错误:当我们指定过程的每个步骤时,在错误发生时更容易识别和纠正错误。错误消息通常会清楚地表明命令式代码中出现问题的位置。

  3. 性能:在许多情况下,命令式语言允许更直接、更高效的优化,因为程序员可以控制系统资源的使用方式。

  4. 适应不同的上下文:命令式编程非常灵活,可以适应解决各种问题,从最简单的应用程序到复杂的应用程序。

  5. 状态控制:在命令式语言中,程序状态是通过变量和数据结构显式操纵的。这使得管理可变数据和控制程序的内部状态变得更加容易。

第四项将我们带到一个非常重要的概念,我们将在其他时间介绍:

对象方向.


在本文中,我们将探讨如何打印“Hello, World!”这一简单行为。 Java 向我们介绍了该语言的基本概念。对代码中使用的关键字的分析揭示了 Java 程序的基本结构及其在命令式编程上下文中的含义。

通过理解这里介绍的命令式编程的原理(控制流、调试错误的简易性、性能优化、适应性和状态管理),初级程序员就具备了构建和理解健壮、高效的 Java 程序的基本工具。

在以后的文章中,我们将探讨更高级的概念,例如面向对象,这些概念进一步扩展 Java 的功能并为开发复杂、可扩展的应用程序打开大门。

既然您已经了解了基础知识,您就可以更深入地探索 Java 编程的广阔领域了。保持积极性并不断探索新概念,以提高您作为开发人员的技能。

我希望这篇文章对您开始 Java 语言之旅有用。如果您有任何问题或建议,请随时在下面的评论中分享。

版本声明 本文转载于:https://dev.to/malheiros/systemoutprintlnintroducao-ao-java-35k5?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • TypeScript 冒险与类型挑战 – Day Pick
    TypeScript 冒险与类型挑战 – Day Pick
    大家好。 我正在解决类型挑战,以更深入地研究 TypeScript。 今天,我想分享一下我对Pick的了解。 - 挑战 - interface Todo { title: string description: string completed: boolean } ty...
    编程 发布于2024-11-03
  • 如何扩展 JavaScript 中的内置错误对象?
    如何扩展 JavaScript 中的内置错误对象?
    扩展 JavaScript 中的 Error要扩展 JavaScript 中的内置 Error 对象,您可以使用 extends 关键字定义 Error 的子类。这允许您使用附加属性或方法创建自定义错误。在 ES6 中,您可以定义自定义错误类,如下所示:class MyError extends E...
    编程 发布于2024-11-03
  • 将测试集中在域上。 PHPUnit 示例
    将测试集中在域上。 PHPUnit 示例
    介绍 很多时候,开发人员尝试测试 100%(或几乎 100%)的代码。显然,这是每个团队应该为他们的项目达到的目标,但从我的角度来看,只应该完全测试整个代码的一部分:您的域。 域基本上是代码中定义项目实际功能的部分。例如,当您将实体持久保存到数据库时,您的域不负责将其持久保存在数据...
    编程 发布于2024-11-03
  • 如何使用 SQL 搜索列中的多个值?
    如何使用 SQL 搜索列中的多个值?
    使用 SQL 在列中搜索多个值构建搜索机制时,通常需要在同一列中搜索多个值场地。例如,假设您有一个搜索字符串,例如“Sony TV with FullHD support”,并且想要使用该字符串查询数据库,将其分解为单个单词。通过利用 IN 或 LIKE 运算符,您可以实现此功能。使用 IN 运算符...
    编程 发布于2024-11-03
  • 如何安全地从 Windows 注册表读取值:分步指南
    如何安全地从 Windows 注册表读取值:分步指南
    如何安全地从 Windows 注册表读取值检测注册表项是否存在确定注册表项是否存在:LONG lRes = RegOpenKeyExW(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Perl", 0, KEY_READ, &hKey); if (lRes...
    编程 发布于2024-11-03
  • Staat源码中的useBoundStoreWithEqualityFn有解释。
    Staat源码中的useBoundStoreWithEqualityFn有解释。
    在这篇文章中,我们将了解Zustand源码中useBoundStoreWithEqualityFn函数是如何使用的。 上述代码摘自https://github.com/pmndrs/zustand/blob/main/src/traditional.ts#L80 useBoundStoreWithE...
    编程 发布于2024-11-03
  • 如何使用 Go 安全地连接 SQL 查询中的字符串?
    如何使用 Go 安全地连接 SQL 查询中的字符串?
    在 Go 中的 SQL 查询中连接字符串虽然文本 SQL 查询提供了一种简单的数据库查询方法,但了解将字符串文字与值连接的正确方法至关重要以避免语法错误和类型不匹配。提供的查询语法:query := `SELECT column_name FROM table_name WHERE ...
    编程 发布于2024-11-03
  • 如何在 Python 中以编程方式从 Windows 剪贴板检索文本?
    如何在 Python 中以编程方式从 Windows 剪贴板检索文本?
    以编程方式访问 Windows 剪贴板以在 Python 中进行文本检索Windows 剪贴板充当数据的临时存储,从而实现跨应用程序的无缝数据共享。本文探讨如何使用 Python 从 Windows 剪贴板检索文本数据。使用 win32clipboard 模块要从 Python 访问剪贴板,我们可以...
    编程 发布于2024-11-03
  • 使用 MySQL 存储过程时如何访问 PHP 中的 OUT 参数?
    使用 MySQL 存储过程时如何访问 PHP 中的 OUT 参数?
    使用 MySQL 存储过程访问 PHP 中的 OUT 参数使用 PHP 在 MySQL 中处理存储过程时,获取由于文档有限,“OUT”参数可能是一个挑战。然而,这个过程可以通过利用 mysqli PHP API 来实现。使用 mysqli考虑一个名为“myproc”的存储过程,带有一个 IN 参数(...
    编程 发布于2024-11-03
  • 在 Kotlin 中处理 null + null:会发生什么?
    在 Kotlin 中处理 null + null:会发生什么?
    在 Kotlin 中处理 null null:会发生什么? 在 Kotlin 中进行开发时,您一定会遇到涉及 null 值的场景。 Kotlin 的 null 安全方法众所周知,但是当您尝试添加 null null 时会发生什么?让我们来探讨一下这个看似简单却发人深省的情况! ...
    编程 发布于2024-11-03
  • Python 字符串文字中“r”前缀的含义是什么?
    Python 字符串文字中“r”前缀的含义是什么?
    揭示“r”前缀在字符串文字中的作用在Python中创建字符串文字时,你可能遇到过神秘的“r” ” 前缀。此前缀具有特定的含义,可能会影响字符串的解释,尤其是在处理正则表达式时。“r”前缀表示该字符串应被视为“原始”字符串。这意味着Python将忽略字符串中的所有转义序列,从而允许您按字面意思表示字符...
    编程 发布于2024-11-03
  • 如何解决旧版 Google Chrome 的 Selenium Python 中的“无法找到 Chrome 二进制文件”错误?
    如何解决旧版 Google Chrome 的 Selenium Python 中的“无法找到 Chrome 二进制文件”错误?
    在旧版 Google Chrome 中无法使用 Selenium Python 查找 Chrome 二进制错误在旧版 Google Chrome 中使用 Python 中的 Selenium 时,您可能会遇到以下错误:WebDriverException: unknown error: cannot...
    编程 发布于2024-11-03
  • `.git-blame-ignore-revs` 忽略批量格式更改。
    `.git-blame-ignore-revs` 忽略批量格式更改。
    .git-blame-ignore-revs 是 2.23 版本中引入的一项 Git 功能,允许您忽略 git Blame 结果中的特定提交。这对于在不改变代码实际功能的情况下更改大量行的批量提交特别有用,例如格式更改、重命名或在代码库中应用编码标准。通过忽略这些非功能性更改,gitblame 可以...
    编程 发布于2024-11-03
  • 掌握函数参数:JavaScript 中的少即是多
    掌握函数参数:JavaScript 中的少即是多
    嘿,开发者们! ?今天,让我们深入探讨编写干净、可维护的 JavaScript 的一个关键方面:管理函数参数 太多参数的问题 你遇到过这样的函数吗? function createMenu(title, body, buttonText, cancellable, theme, fo...
    编程 发布于2024-11-03
  • 如何使用 FastAPI WebSockets 维护 Jinja2 模板中的实时评论列表?
    如何使用 FastAPI WebSockets 维护 Jinja2 模板中的实时评论列表?
    使用 FastAPI WebSockets 更新 Jinja2 模板中的项目列表在评论系统中,维护最新的评论列表至关重要提供无缝的用户体验。当添加新评论时,它应该反映在模板中,而不需要手动重新加载。在Jinja2中,更新评论列表通常是通过API调用来实现的。然而,这种方法可能会引入延迟并损害用户界面...
    编程 发布于2024-11-03

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3