<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Java on Roam Tech-verse | Roamverse Technical Blog</title>
    <link>/notes/java/</link>
    <description>Recent content in Java on Roam Tech-verse | Roamverse Technical Blog</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>Copyright © 2020-2026 Razon Yang. All Rights Reserved.
</copyright><atom:link href="/notes/java/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Java 概述</title>
      <link>/notes/java/introduction/</link>
      <pubDate>Tue, 04 Jun 2024 06:04:04 +0000</pubDate>
      <guid>/notes/java/introduction/</guid>
      <description><![CDATA[<h1 id="特点" data-numberify>特点<a class="anchor ms-1" href="#特点"></a></h1>
<p>Java 比较突出的特点：</p>
<ul>
<li><strong>面向对象</strong>：封装，继承，多态。</li>
<li><strong>平台无关性</strong>（跨平台）：Java 是一种 “<u>一次编写，到处运行</u>（Write Once，Run any Where）” 的语言。也就是说，采用 Java 语言编写的程序具<u>有很好的可移植性</u>。保证 Java 可移植性的正是 Java 的虚拟机机制。</li>
<li><strong>多线程</strong>：Java 语言提供了多线程支持。</li>
<li><strong>JIT</strong>（Just-In-Time）<strong>编译</strong>：指的是<u>即时编译器</u>，它可以在程序运行时将字节码转换为本地机器码来提高程序运行速度。</li>
<li><strong>编译与解释并存</strong>：需要先将源代码编译成字节码，再解释执行字节码。</li>
</ul>
<hr>

<h1 id="jvmjdk-和-jre" data-numberify>JVM、JDK 和 JRE<a class="anchor ms-1" href="#jvmjdk-和-jre"></a></h1>
<ul>
<li><strong>JVM</strong>（Java Virtual Machine，Java 虚拟机）：JVM 负责<u>将 Java 字节码转换为特定平台的机器码并执行</u>，是 Java <u>实现跨平台的关键</u>所在。针对不同的操作系统，有不同的 JVM 实现。</li>
<li><strong>JRE</strong>（Java Runtime Environment，Java 运行时环境）：JRE 包含了<u>运行 Java 程序所必需的库</u>，以及 <u>JVM</u>。</li>
<li><strong>JDK</strong>（Java Development Kit，Java 开发工具包）：JDK 是一套完整的 Java SDK（Software Development Kit，软件开发工具包），包括了 <u>JRE</u> 以及<u>编译器</u>（<u><code>javac</code></u>）、<u>Java 文档生成工具</u>（<u>Javadoc</u>）、<u>Java 调试器</u>等开发工具。为开发者提供了开发、编译、调试 Java 程序的一整套环境。</li>
</ul>
<p>也就是说，JDK 包含了 JRE、<code>javac</code>、Javadoc、Java 调试器等；JRE 包含了 Java 库和JVM。</p>]]></description>
    </item>
    
    <item>
      <title>Java 反射</title>
      <link>/notes/java/reflect/</link>
      <pubDate>Tue, 14 Feb 2023 00:00:00 +0000</pubDate>
      <guid>/notes/java/reflect/</guid>
      <description><![CDATA[<h1 id="反射" data-numberify>反射<a class="anchor ms-1" href="#反射"></a></h1>
<p>反射是Java中一种用于动态获取类或对象的信息以及动态调用对象方法的功能机制。在运行状态中，对于任意一个类，使用反射可以获取这个类的所有属性和方法；对于任意一个对象，使用反射能够调用它的任意属性和方法。利用反射可以无视对象的修饰符，调用类里面的内容。利用反射可以跟配置文件结合起来使用，把要创建的对象信息和方法写在配置文件中。</p>]]></description>
    </item>
    
  </channel>
</rss>

