news 2026/4/22 3:41:32

JavaSE-语言基础

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
JavaSE-语言基础

JavaSE - 语言基础
(2026 年视角 · 零基础到能写小项目 · 核心知识点全梳理 + 代码示例 + 常见易错点)

JavaSE(Standard Edition)是 Java 的标准版,也是所有 Java 开发者的起点。
语言基础部分主要指:能独立写出正确、可读的 Java 程序的那一套语法规则和核心机制。

下面按实际学习顺序 + 面试/项目高频度整理,建议按这个顺序掌握。

一、Java 入门 & 开发环境(先跑通 Hello World)

  1. JDK / JRE / JVM 区别(面试必问)
名词全称作用包含什么记住一句话
JDKJava Development Kit开发工具包(写代码 + 运行)JRE + 编译器 javac + 工具开发者下载这个
JREJava Runtime Environment运行环境(只跑程序)JVM + 核心类库 rt.jar给最终用户跑 jar 的环境
JVMJava Virtual MachineJava 虚拟机(真正执行字节码)类加载器 + 字节码执行引擎等.java → .class → JVM 解释执行

2026 年主流:JDK 17 / 21(LTS)JDK 23/24(最新特性预览)

  1. 第一个程序(必须自己敲)
publicclassHelloWorld{publicstaticvoidmain(String[]args){System.out.println("Hello, JavaSE 2026!");}}

编译运行命令(命令行练习用):

javac HelloWorld.java java HelloWorld

二、Java 基本语法规则(写代码的“交通规则”)

规则说明示例 / 注意事项
大小写敏感class ≠ Class关键字、标识符、类名都区分大小写
每条语句以 ; 结尾必须!System.out.println(“hi”);
{} 代码块类、方法、if、循环都要用 {} 包住强烈建议写,即使只有一行
单行注释//// 这是一行注释
多行注释/* … *//* 多行 */
文档注释/** … */用于 javadoc 生成 API 文档
源文件编码推荐 UTF-8IDEA 默认 UTF-8,避免中文乱码

三、标识符 & 命名规范(写代码像写中文作文)

类型规则推荐命名风格(2026 主流)示例
标识符字母、数字、下划线、$ 开头;不能数字开头;不能是关键字age, _count, $price
类名大驼峰首字母大写 + 驼峰UserService, OrderEntity
接口名大驼峰通常以 I 或 Able 结尾(可选)Runnable, Comparable
方法名小驼峰动词或动词+名词getName, calculateTotal
变量名小驼峰名词或形容词+名词userAge, totalPrice
常量名全大写 + 下划线MAX_VALUE, PI
包名全小写,多级用 . 分隔公司域名单词倒写com.company.project

四、数据类型(8 大基本类型 + 引用类型)

8 种基本数据类型(值类型,栈上分配)

类型字节默认值取值范围包装类常见场景
byte10-128 ~ 127Byte文件流、小整数
short20-32768 ~ 32767Short很少用
int40-2^31 ~ 2^31-1 ≈ -21亿 ~ 21亿Integer最常用整数
long80L-2^63 ~ 2^63-1LongID、大金额、时间戳
float40.0f≈ ±3.4E38Float很少用(精度问题)
double80.0≈ ±1.8E308Double科学计算、小数最常用
char2‘’0 ~ 65535(Unicode)Character单个字符
boolean~1bitfalsetrue / falseBoolean条件判断

引用类型(地址类型,堆上分配)

  • 类、接口、数组、枚举、注解
  • 默认值:null

字面量写法示例(2026 常见写法)

inta=100;longb=100_000_000_000L;// 下划线分隔,可读性好(Java 7+)doublec=3.14;floatd=3.14f;chare='中';// 单引号Strings="Hello 2026";// 双引号(引用类型)booleanflag=true;

五、类型转换(自动 + 强制)

自动类型转换(从小 → 大,安全)

byte → short → int → long → float → double
char → int

强制类型转换(可能丢失精度)

inti=100;byteb=(byte)i;// 强制doubled=3.99;intn=(int)d;// 3(直接截断,不是四舍五入)longl=9999999999L;intm=(int)l;// 溢出!得到负数或乱值

常见陷阱

bytex=1;bytey=2;// byte z = x + y; // 错!int + int = intbytez=(byte)(x+y);// 正确

六、运算符(优先级 + 常见坑)

类别运算符优先级坑点 / 注意
算术+ - * / % ++ –/ 整数除法直接截断;% 可用于负数
关系> < >= <= == !=== 比较基本类型值,引用类型比较地址
逻辑&& || ! 短路与/或&& 左false右不执行;|| 左true右不执行
位运算& | ^ ~ << >> >>>面试常考:& vs &&,<< 乘2,>>> 无符号右移
赋值= += -= *= /= %= <<= >>=最低a += 5 等价 a = (int)(a + 5)
三元条件 ? 表达式1 : 表达式2可嵌套,但别写太复杂

经典面试题

inti=1;i=i++;// i 还是 1(先用后加)i=++i;// i 变成 2(先加后用)

七、流程控制(程序的“大脑”)

  1. if-else / if-else if-else
  2. switch(Java 17+ 支持 switch 表达式 + 模式匹配)
// 传统 switchswitch(day){case1,2,3,4,5->System.out.println("工作日");case6,7->System.out.println("周末");default->System.out.println("非法");}// Java 14+ switch 表达式(推荐)Stringtype=switch(score/10){case10,9->"优秀";case8->"良好";case7->"中等";default->"不及格";};
  1. 循环:for / while / do-while / for-each
// for-each(最常用遍历数组/集合)for(intnum:arr){System.out.println(num);}
  1. break / continue / 带标签的跳出
outer:for(inti=0;i<5;i++){for(intj=0;j<5;j++){if(j==3)breakouter;// 跳出双层循环}}

八、数组(基础数据结构)

// 声明 + 创建 + 初始化int[]arr1=newint[5];// 默认 0int[]arr2={1,2,3,4,5};// 静态初始化String[]names=newString[]{"Tom","Jerry"};// 二维数组(不规则也行)int[][]matrix={{1,2,3},{4,5},{6,7,8,9}};

常见操作:length、遍历、拷贝(System.arraycopy 或 Arrays.copyOf)

九、Scanner 输入(控制台交互必备)

importjava.util.Scanner;Scannersc=newScanner(System.in);System.out.print("请输入年龄:");intage=sc.nextInt();Stringname=sc.next();// 读到空格停止Stringline=sc.nextLine();// 读整行(常跟 nextInt 后用)

:nextInt() 后 nextLine() 会读到回车 → 解决方案:加一个 nextLine() 吃掉回车。

总结:JavaSE 语言基础掌握度自测表

  • 能独立写出 HelloWorld 并命令行编译运行
  • 能区分 8 大基本类型 + 包装类 + 默认值
  • 熟练使用变量、常量、命名规范
  • 会自动/强制类型转换 & 常见溢出坑
  • 掌握所有运算符优先级 & 经典 i++ / ++i 题
  • 能写出 if / switch / 三种循环 & break/continue
  • 会声明、使用一维/二维数组 & for-each
  • 会用 Scanner 安全读入各种类型

掌握以上内容 ≈ JavaSE 语言基础 70–80%(剩下的 20–30% 是面向对象 + String + 异常 + 集合基础)。

你现在处于哪个阶段?

  • 完全零基础,想从环境搭建开始?
  • 已经能写简单程序,想系统过一遍语法坑?
  • 准备面试,想重点刷常考基础题?

告诉我你的情况,我可以继续给你更针对性的下一部分(比如面向对象、String 详解、数组进阶、常见笔试题等)~ 😄

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 17:07:21

硅胶按键的定制

一、硅胶按键阻值测试1、前言这只硅胶按键是从一个游戏摇柄上拆卸下来的。室温下&#xff0c;硅胶按键中的电阻大约 100Ω 左右。但会随着压力不同而改变。这里使用两个大头针接触硅胶按键&#xff0c;对应的电阻大约 120Ω。下面准备通过制冷半导体改变他的温度&#xff0c;定…

作者头像 李华
网站建设 2026/4/21 14:20:32

个人申报学分管理(11849)

有需要的同学&#xff0c;源代码和配套文档领取&#xff0c;加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码&#xff08;前后端源代码SQL脚本&#xff09;配套文档&#xff08;LWPPT开题报告&#xff09;远程调试控屏包运行 三、技术介绍 Java…

作者头像 李华
网站建设 2026/4/18 18:22:53

基于springboot的宠物诊所管理系统的设计与实现

背景分析 宠物行业快速发展&#xff0c;宠物医疗需求激增。传统宠物医院依赖纸质记录和人工管理&#xff0c;存在效率低、易出错、数据难以共享等问题。信息化转型成为行业刚需&#xff0c;SpringBoot框架因其快速开发、微服务支持等特性成为理想技术选型。 技术意义 采用Sp…

作者头像 李华
网站建设 2026/4/17 2:47:55

人工智能应用-机器听觉:13. 辨认 VS 确认

基于说话人向量&#xff0c;可以实现两种基本任务&#xff1a;&#xff08;1&#xff09;声纹确认&#xff08;Verification&#xff09;&#xff1a;判断两个发音片段是否来自同一个人&#xff1b;&#xff08;2&#xff09;声纹辨认&#xff08;Identification&#xff09;&a…

作者头像 李华
网站建设 2026/4/18 6:00:30

Azure IoT 云到设备通信方式

简简单单 Online zuozuo &#xff1a;本心、输入输出、结果 文章目录Azure IoT 云到设备通信方式前言1、云到设备&#xff08;C2D&#xff09;消息2、直接方法&#xff08;Direct Methods&#xff09;3、设备孪生中的期望属性&#xff08;Desired Properties&#xff09;4、云端…

作者头像 李华