当前位置: 首页 > news >正文

Java 编程初体验


Java学习资料

Java学习资料

Java学习资料


一、引言

在当今数字化的时代,编程已然成为一项极具价值的技能。而 Java 作为一门广泛应用于企业级开发、移动应用、大数据等众多领域的编程语言,吸引着无数初学者投身其中。当我们初次踏入 Java 编程的世界,就仿佛开启了一场充满新奇与挑战的冒险之旅。下面,就让我们一同回顾 Java 编程的初体验。

二、环境搭建

要开启 Java 编程之旅,首先得搭建好开发环境。这主要包括安装 JDK(Java Development Kit,Java 开发工具包)和集成开发环境(IDE)。

2.1 安装 JDK

JDK 是 Java 编程的基础,它包含了 Java 编译器、Java 虚拟机(JVM)等重要组件。我们可以从 Oracle 官方网站或者 OpenJDK 官网下载适合自己操作系统的 JDK 版本。下载完成后,按照安装向导的提示进行安装。安装完成后,还需要配置环境变量,将 JDK 的 bin 目录添加到系统的 PATH 变量中,这样系统才能找到 Java 相关的命令。

2.2 选择 IDE

IDE 能大大提高我们的开发效率。常见的 Java IDE 有 Eclipse、IntelliJ IDEA 和 NetBeans 等。对于初学者来说,IntelliJ IDEA 的社区版是个不错的选择,它提供了丰富的代码提示、自动补全、调试等功能。下载并安装好 IDE 后,我们就可以开始创建 Java 项目了。

三、第一个 Java 程序:Hello World

3.1 创建项目

打开 IntelliJ IDEA,选择创建一个新的 Java 项目。按照向导的步骤,指定项目的名称和存储位置,然后 IDE 会自动为我们创建好项目的基本结构。

3.2 编写代码

在项目中创建一个新的 Java 类,命名为 HelloWorld。在类中编写如下代码:

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

这段代码虽然简短,但却包含了 Java 程序的基本结构。public class HelloWorld 定义了一个公共类 HelloWorld;public static void main(String[] args) 是 Java 程序的入口点,程序从这里开始执行;System.out.println(“Hello, World!”); 的作用是将字符串 “Hello, World!” 输出到控制台。

3.3 运行程序

编写完代码后,我们可以点击 IDE 中的运行按钮,或者使用快捷键来运行程序。如果一切配置正确,控制台会输出 Hello, World!。看到这行输出的那一刻,我们会真切地感受到自己已经成功迈出了 Java 编程的第一步,心中充满了喜悦和成就感。

四、数据类型与变量

4.1 数据类型

Java 是一种强类型语言,它要求每个变量都必须声明其数据类型。Java 中的数据类型主要分为基本数据类型和引用数据类型。基本数据类型包括整数类型(如 int、long)、浮点类型(如 float、double)、字符类型(char)和布尔类型(boolean)。引用数据类型则包括类、接口、数组等。

4.2 变量声明与赋值

我们可以通过以下方式声明并赋值变量:

int age = 20;
double height = 1.75;
char gender = 'M';
boolean isStudent = true;

在这个例子中,我们分别声明了一个整数变量 age、一个双精度浮点变量 height、一个字符变量 gender 和一个布尔变量 isStudent,并为它们赋予了初始值。

五、控制流程语句

5.1 条件语句

条件语句用于根据不同的条件执行不同的代码块。Java 中的条件语句主要有 if-else 语句和 switch 语句。例如:

int score = 80;
if (score >= 90) {System.out.println("优秀");
} else if (score >= 80) {System.out.println("良好");
} else if (score >= 60) {System.out.println("及格");
} else {System.out.println("不及格");
}

5.2 循环语句

循环语句用于重复执行一段代码。Java 提供了 for 循环、while 循环和 do-while 循环。例如,使用 for 循环输出 1 到 10 的数字:

for (int i = 1; i <= 10; i++) {System.out.println(i);
}

六、面向对象编程基础

6.1 类与对象

Java 是一门面向对象的编程语言,类是对象的抽象描述,而对象是类的具体实例。我们可以定义一个简单的 Person 类:

class Person {String name;int age;public void introduce() {System.out.println("我叫" + name + ",今年" + age + "岁。");}
}

然后创建 Person 类的对象并调用其方法:

Person person = new Person();
person.name = "张三";
person.age = 25;
person.introduce();

6.2 封装、继承和多态

封装、继承和多态是面向对象编程的三大特性。封装是将数据和操作数据的方法绑定在一起,隐藏对象的内部实现细节;继承允许一个类继承另一个类的属性和方法,从而实现代码的复用;多态则是指同一个方法可以根据对象的不同类型表现出不同的行为。

七、初体验的感悟

在 Java 编程的初体验中,我们从环境搭建到写出第一个程序,再到学习数据类型、控制流程语句和面向对象编程基础,每一步都充满了挑战和惊喜。虽然在学习过程中会遇到各种错误和难题,但通过查阅资料、请教他人,我们逐渐掌握了解决问题的方法。Java 编程的严谨性和逻辑性让我们体会到了编程的魅力,同时也锻炼了我们的思维能力。随着对 Java 编程的深入学习,我们期待着能够用它开发出更加复杂和实用的程序。

相关文章:

Java 编程初体验

Java学习资料 Java学习资料 Java学习资料 一、引言 在当今数字化的时代&#xff0c;编程已然成为一项极具价值的技能。而 Java 作为一门广泛应用于企业级开发、移动应用、大数据等众多领域的编程语言&#xff0c;吸引着无数初学者投身其中。当我们初次踏入 Java 编程的世界&…...

element-plus 的table section如何实现单选

如果是单选那么全新的按钮应该隐藏或者不可编辑的状态。但是我没找到改变成不可编辑的方法&#xff0c;只能采取隐藏 <template><!-- 注意要包一层div根元素&#xff0c;否则css样式可能会不生效&#xff0c;原因不详 --><div><el-table ref"proTab…...

【JavaEE进阶】图书管理系统 - 壹

目录 &#x1f332;序言 &#x1f334;前端代码的引入 &#x1f38b;约定前后端交互接口 &#x1f6a9;接口定义 &#x1f343;后端服务器代码实现 &#x1f6a9;登录接口 &#x1f6a9;图书列表接口 &#x1f384;前端代码实现 &#x1f6a9;登录页面 &#x1f6a9;…...

牛客周赛 Round 77 题解

文章目录 A-时间表B-数独数组D-隐匿社交网络E-1or0 A-时间表 签到题 #include <bits/stdc.h> using namespace std;int main() {int a[6] {20250121,20250123,20250126,20250206,20250208,20250211};int n; cin >> n;cout << a[n - 1];return 0; }B-数独数…...

Mybatis配置文件详解

MyBatis通过XML或注解的方式将Java对象与数据库中的记录进行映射&#xff0c;极大地简化了数据访问层的开发。而在MyBatis的核心组成部分中&#xff0c;配置文件扮演着举足轻重的角色。它不仅定义了MyBatis的运行环境&#xff0c;还配置了数据源、事务管理、映射器等关键元素&a…...

《深度揭秘:TPU张量计算架构如何重塑深度学习运算》

在深度学习领域&#xff0c;计算性能始终是推动技术发展的关键因素。从传统CPU到GPU&#xff0c;再到如今大放异彩的TPU&#xff08;张量处理单元&#xff09;&#xff0c;每一次硬件架构的革新都为深度学习带来了质的飞跃。今天&#xff0c;就让我们深入探讨TPU的张量计算架构…...

Java基础知识总结(二十二)--List接口

List本身是Collection接口的子接口&#xff0c;具备了Collection的所有方法。现在学习List体系特有的共性方法&#xff0c;查阅方法发现List的特有方法都有索引&#xff0c;这是该集合最大的特点。 List&#xff1a;有序(元素存入集合的顺序和取出的顺序一致)&#xff0c;元素都…...

[STM32 - 野火] - - - 固件库学习笔记 - - -十二.基本定时器

一、定时器简介 STM32 中的定时器&#xff08;TIM&#xff0c;Timer&#xff09;是其最重要的外设之一&#xff0c;广泛用于时间管理、事件计数和控制等应用。 1.1 基本功能 定时功能&#xff1a;TIM定时器可以对输入的时钟进行计数&#xff0c;并在计数值达到设定值时触发中…...

算法随笔_27:最大宽度坡

上一篇:算法随笔_26: 按奇偶排序数组-CSDN博客 题目描述如下: 给定一个整数数组 nums&#xff0c;坡是元组 (i, j)&#xff0c;其中 i < j 且 nums[i] < nums[j]。这样的坡的宽度为 j - i。 找出 nums 中的坡的最大宽度&#xff0c;如果不存在&#xff0c;返回 0 。 …...

无公网IP 外网访问本地部署 llamafile 大语言模型

llamafile 是一种AI大模型部署&#xff08;或者说运行&#xff09;的方案&#xff0c;它的特点就是可以将模型和运行环境打包成一个独立的可执行文件&#xff0c;这样就简化了部署流程。用户只需要下载并执行该文件&#xff0c;无需安装运行环境或依赖库&#xff0c;这大大提高…...

使用PC版本剪映制作照片MV

目录 制作MV模板时长调整拖动边缘缩短法分割删除法变速法整体调整法 制作MV 导入音乐 导入歌词 点击歌词 和片头可以修改字体&#xff1a; 还可以给字幕添加动画效果&#xff1a; 导入照片&#xff0c;自动创建照片轨&#xff1a; 修改片头字幕&#xff1a;增加两条字幕轨&…...

搭建 docxify 静态博客教程

首先&#xff0c;安装 node 环境安装 docxify &#xff0c;参考官网&#xff1a;https://docsify.js.org/#/zh-cn/ npm i docsify-cli -g新建docs文件夹专门用来放文章&#xff0c;初始化命令 docsify init ./docs就会生成如下两个文件&#xff0c;index.html 入口文件&#…...

汽车OEMs一般出于什么目的来自定义Autosar CP一些内容

汽车OEMs在使用AUTOSAR CP(Classic Platform)协议时,可能会根据自身的特定需求对标准协议进行修改,形成自己的企业标准(企标)。这种修改通常是为了满足特定的硬件平台、功能需求、安全要求或优化性能。以下是一些常见的修改场景和例子: 1. 硬件平台适配 企业可能会根据…...

Vue.js Vuex 模块化管理

Vue.js Vuex 模块化管理 今天咱们来聊聊如何在 Vuex 中进行模块化管理。当你的 Vue.js 应用变得越来越庞大时&#xff0c;单一的状态管理可能会让人头疼。这时候&#xff0c;Vuex 的模块化功能就派上用场了。 为什么需要模块化&#xff1f; 想象一下&#xff0c;如果把所有的…...

分布式光纤应变监测是一种高精度、分布式的监测技术

一、土木工程领域 桥梁结构健康监测 主跨应变监测&#xff1a;在大跨度桥梁的主跨部分&#xff0c;如悬索桥的主缆、斜拉桥的斜拉索和主梁&#xff0c;分布式光纤应变传感器可以沿着这些关键结构部件进行铺设。通过实时监测应变情况&#xff0c;能够精确捕捉到车辆荷载、风荷…...

用Devc++与easyx一步一步做游戏[启动界面部分]-解决hover闪烁问题及优化

在之前的博文中《用Devc与easyx一步一步做游戏[启动界面部分]-之按钮制作》&#xff0c;我们利用Devc和easyx完成了游戏启动界面按钮的基本制作&#xff0c;实现了按钮的绘制以及鼠标悬停时的信息提示功能。然而&#xff0c;目前还存在一个问题&#xff0c;即鼠标移动时&#x…...

mysql 学习3 SQL语句--整体概述。SQL通用语法;DDL创建数据库,查看当前数据库是那个,删除数据库,使用数据库;查看当前数据库有哪些表

SQL通用语法 SQL语句分类 DDL data definition language : 用来创建数据库&#xff0c;创建表&#xff0c;创建表中的字段&#xff0c;创建索引。因此成为 数据定义语言 DML data manipulation language 有了数据库和表以及字段后&#xff0c;那么我们就需要给这个表中 添加数…...

【数据结构】_链表经典算法OJ:分割链表(力扣—中等)

目录 1. 题目描述及链接 2. 解题思路 2.1 思路1 2.2 思路2 2.3 思路3&#xff08;本题采取该解法&#xff09; 3. 题解程序 1. 题目描述及链接 题目链接&#xff1a;面试题 02.04. 分割链表 - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 给你一个链表…...

k8s支持自定义field-selector spec.hostNetwork过滤

好久没写博客啦&#xff0c;年前写一个博客就算混过去啦&#x1f602; 写一个小功能&#xff0c;对于 Pod&#xff0c;在没有 label 的情况下&#xff0c;支持 --field-selector spec.hostNetwork 查询 Pod 是否为 hostNetwork 类型&#xff0c;只为了熟悉 APIServer 是如何构…...

ICSE‘25 LLM Assistance for Memory Safety

不知道从什么时候开始&#xff0c;各大技术社区&#xff0c;技术群聊流行着 “用Rust重写!” &#xff0c;放一张图(笑死… 这不, 随着大模型技术的流行&#xff0c;大家都在探索如何让大模型自动完成仓库级别(全程序)的代码重构&#xff0c;代码变换&#xff08;Refactor&…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统&#xff0c;支持多语言对话&#xff08;如 中文&#xff0c;英文&#xff0c;日语&#xff09;&#xff0c;语音情感&#xff08;如 开心&#xff0c;悲伤&#xff09;&#x…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险

C#入门系列【类的基本概念】&#xff1a;开启编程世界的奇妙冒险 嘿&#xff0c;各位编程小白探险家&#xff01;欢迎来到 C# 的奇幻大陆&#xff01;今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类&#xff01;别害怕&#xff0c;跟着我&#xff0c;保准让你轻松搞…...

苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会

在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

通过MicroSip配置自己的freeswitch服务器进行调试记录

之前用docker安装的freeswitch的&#xff0c;启动是正常的&#xff0c; 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...

HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散

前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说&#xff0c;在叠衣服的过程中&#xff0c;我会带着团队对比各种模型、方法、策略&#xff0c;毕竟针对各个场景始终寻找更优的解决方案&#xff0c;是我个人和我司「七月在线」的职责之一 且个人认为&#xff0c…...

MySQL的pymysql操作

本章是MySQL的最后一章&#xff0c;MySQL到此完结&#xff0c;下一站Hadoop&#xff01;&#xff01;&#xff01; 这章很简单&#xff0c;完整代码在最后&#xff0c;详细讲解之前python课程里面也有&#xff0c;感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...