初识 Java

Java 简介

Java 是一种通用的、面向对象的编程语言,由 Sun Microsystems 公司开发,现归甲骨文公司所有。其最核心的特性是平台独立性——编写一次,随处运行(Write Once, Run Anywhere)。

  • 应用领域:Android 应用、金融服务、电信系统、嵌入式设备、大数据框架(如 Hadoop)、Web 应用等。
  • 社区生态:全球最大的开发者社区之一,学习资源丰富,问题容易解决。

Java 简史

  • 1991 年:由詹姆斯·高斯林(James Gosling)等人发起,最初名为“Oak”。
  • 1995 年:更名为“Java”,名称源于印尼的爪哇咖啡,标志为一杯热咖啡。
  • 1996 年:Sun 发布 Java 1.0。
  • 2009 年:Oracle 收购 Sun,获得 Java 所有权。
  • 版本迭代
    • 早期:每 1~3 年发布一个大版本。
    • 2017 年(Java 9)起:改为每 6 个月发布一个新版本,快速迭代。
  • 最新版本:Java 21(LTS,长期支持版)、Java 22(非 LTS)。建议生产环境使用 LTS 版本。

Java标识


Java 语言特点

  1. 简单易学:语法清晰,去除了 C++ 中复杂的指针和多继承等特性。
  2. 面向对象:封装、继承、多态三大特性。
  3. 平台无关:基于 JVM 实现“一次编译,到处运行”。
  4. 健壮性:强类型、异常处理、垃圾回收机制(GC)。
  5. 安全性:提供安全管理器和类加载机制,防止恶意代码。
  6. 多线程:内置对多线程编程的支持。
  7. 动态性:支持反射、动态类加载等特性。
  8. 高性能:JIT(即时编译)技术使执行效率接近 C++。

Java 的三大版本

1. Java SE(标准版)

  • 核心基础:包含 JVM、基础类库、I/O、网络、多线程等。

  • 用途:桌面应用、控制台程序、基础库开发。

  • 体系结构图J:,如下

     Java SE 的体系结构

2. Java EE(企业版)

  • 基于 SE:提供 Web 服务、分布式事务、消息服务等企业级功能。
  • 用途:大型网站、中间件、微服务(如 Spring Boot、Jakarta EE)。

3. Java ME(微型版)

  • 嵌入式设备:用于手机、PDA、机顶盒等资源受限设备。
  • 现状:随着 Android 的兴起,Java ME 已逐渐淡出主流。

Java 开发环境核心概念

组件 说明
JVM(Java 虚拟机) 运行 Java 字节码的虚拟机,不同平台有不同实现,是跨平台的基础。
JRE(Java 运行时环境) 包含 JVM 和核心类库,用于运行已编译的 Java 程序。
JDK(Java 开发工具包) 包含 JRE 以及编译器(javac)、调试器、文档工具等,用于开发和编译 Java 程序。

关系:JDK 包含 JRE,JRE 包含 JVM。


Java 跨平台原理

Java 程序不直接运行在操作系统上,而是运行在 JVM 上:

image-20220810191955534
  1. 源代码(.java)通过 JDK 中的编译器 javac 编译成字节码(.class 文件)。
  2. 字节码文件由 JVM 解释或编译(JIT)为对应平台的机器码。
  3. 不同平台有各自的 JVM 实现,但执行相同的字节码,从而实现“一次编译,到处运行”。
img

基础语法速览

1. 命名规范

  • 类名:首字母大写,驼峰式(如 MyFirstClass)。
  • 方法名:首字母小写,后续单词大写(如 myFirstMethod)。
  • 包名:全小写,域名倒写(如 com.example.myapp)。
  • 常量名:全大写,下划线分隔(如 MAX_VALUE)。

2. 数据类型(四类八种)

类型 关键字 占用字节 默认值 范围
字节型 byte 1 0 -128 ~ 127
短整型 short 2 0 -32768 ~ 32767
整型 int 4 0 -2^31 ~ 2^31-1
长整型 long 8 0L -2^63 ~ 2^63-1
单精度浮点 float 4 0.0f ±3.4E±38
双精度浮点 double 8 0.0d ±1.8E±308
字符型 char 2 '\u0000' Unicode 字符
布尔型 boolean 1 false true / false

3. 运算符分类

类型 运算符 说明
赋值 = 将右侧值赋给左侧变量
算术 + - * / % 基本数学运算
自增自减 ++ -- 变量加 1 或减 1(前缀/后缀区别)
比较 > < >= <= == != 返回布尔值
逻辑 `&&
按位 `& ^ ~`
移位 << >> >>> 左移、带符号右移、无符号右移
三元 ? : 条件 ? 表达式1 : 表达式2

优先级() 最高,不确定时直接加括号。


学习建议

  1. 打好基础:先掌握 Java SE 核心(集合、IO、多线程、异常处理)。
  2. 面向对象:深入理解封装、继承、多态、接口。
  3. 掌握工具:熟练使用 IntelliJ IDEA / Eclipse、Maven / Gradle、Git。
  4. 跟进版本:了解新特性(如 Lambda、Stream、模块化、记录类等)。
  5. 动手实践:多写代码,做小项目,参与开源。
posted @ 2022-08-11 21:26  克峰同学  阅读(79)  评论(0)    收藏  举报