今天我看到String的源代码,有点迷糊,还请大家不吝赐教。
/**
* Compares this string to the specified object. The result is {@code
* true} if and only if the argument is not {@code null} and is a {@code
* String} object that represents the same sequence of characters as this
* object.
*
* @param anObject
* The object to compare this {@code String} against
*
* @return {@code true} if the given object represents a {@code String}
* equivalent to this string, {@code false} otherwise
*
* @see #compareTo(String)
* @see #equalsIgnoreCase(String)
*/
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}
这个是String中比较值是否相等的代码,我不明白第一个分支this == anObject,这个在什么时候会成立呢?
分享到:
相关推荐
Java 源码阅读的真实体会是许多程序员追求的目标,但实际上却很少有人能够真正地阅读和理解源代码。本文旨在介绍阅读 Java 源代码的经验和体会,包括技术基础、强烈的求知欲和耐心三个核心点。 技术基础是阅读源...
1. 创建源代码文件:首先,需要在文本编辑器中创建一个新的文本文件,例如命名为`Hello.java`。内容如下: ```java public class Hello { public static void main(String[] args) { System.out.println("Welcome ...
Java 源码阅读的真实体会 以下是从给定文件信息中生成的知识点: 一、 Java 源码阅读的三个核心点 * 技术基础:具备基本的编程语言技能,例如 Java 或 C++,并且能够理解《Core Java》和《深入 Java 虚拟机》等...
源代码中,每个类都应该有清晰的注释,解释类的作用、方法的功能以及关键变量的意义,方便理解和维护。 6. **软件模块流程图** 创建流程图以直观地表示用户输入如何转化为计算,以及计算结果如何反馈到用户界面上...
压缩包内的源代码可能是实现上述概念的实例。学生可能编写了一个主程序,通过创建不同类的对象并调用它们的方法来演示多态和继承的特性。在Myeclipse 6.0环境下编译通过,意味着这些代码符合Java的语法规则,并且...
- Java源代码首先被编译成字节码,然后由Java虚拟机解释执行。 - 这种特性使得Java程序可以在不同的操作系统上运行。 5. **Java的平台无关性**: - Java程序在Java虚拟机上运行,只需安装相应的JVM即可在任何...
4. **编程素养**:在项目实践中体会Java语言的魅力,培养良好的编程习惯。 ### 二、项目主要内容 #### 技术选型 - **图形界面组件**:本项目使用了多种Swing组件,如`JFrame`(顶级容器)、`BorderLayout`(布局...
根据给定文件的信息,本文将深入探讨Java中的标准数据流,并结合实际代码示例来解析其工作原理与应用场景。 ### Java标准数据流简介 在Java编程语言中,数据流是处理输入输出的基础概念之一,主要涉及到如何从一个...
- 使用JDK开发Java程序的步骤,包括编写源代码、编译和运行。 - 集成开发工具JCreator介绍: - JCreator版本介绍及其获取方式。 - 安装过程与使用指南,包括项目创建、代码编写、编译和运行等操作。 - 集成开发...
总结来说,Java与Access的编程主要涉及配置ODBC数据源、加载JDBC-ODBC桥接器驱动、创建连接、执行SQL和处理结果集。虽然这种方式简单易用,但在处理大量数据或对性能有较高要求的场景下,可能不是最佳选择。
#### 关键源代码示例 以下是一个简化的`Crawl`类实现示例,用于展示如何使用多线程抓取数据: ```java public class Crawl implements Runnable { private static int t = 1; private String cookie; private ...
在Java编程语言中,事件机制是构建用户交互界面(UI)不可或缺的一部分。它允许程序对用户的操作做出响应,如点击按钮、输入文本等。本文将深入探讨Java中的事件处理,并结合一个具体的例子——登录功能的实现,来...
7. **源代码解析**: - 引入必要的Java库,如`java.awt`和`javax.swing`,用于创建图形用户界面。 - 创建各种组件,如JButton、JComboBox、JMenuItem等,构建菜单和工具栏。 - 实现ActionListener接口,定义事件...
这通常包括以下几个阶段:创建源代码文件(扩展名为.java),在文件中编写程序,然后使用javac编译器将源代码编译成字节码(.class文件)。例如,编写一个简单的"Hello, World!"程序,你需要定义一个公共类(public ...
**题目描述**:有Java源程序`test.java`,内容如下: ```java class test { public static void main(String[] args) { System.out.println("Test String"); } } ``` 现运行`javac test.java`将其编译,但运行...
2. 编译与运行:使用`javac`命令编译Java源代码,生成`.class`字节码文件,然后通过`java`命令执行程序。在Eclipse等集成开发环境中,这些操作可以自动化完成。 **三、Java语言基础** 1. 数据类型:Java有两大类...
6. 编辑Java源代码 7. 编译Java程序 8. 运行Java程序 9. 根据classpath环境变量定位类 10. Java程序的组织形式 11. Java源文件的命名规则 12. 初学者容易犯的错误 Java编程基础结构化程序设计简介: 1. 程序的三种...
1. **源程序编译**:使用`javac`命令,如`javac HelloWorld.java`,将源代码编译成字节码(.class文件)。 2. **程序运行**:使用`java`命令,如`java HelloWorld`,运行已编译的类。 **三、文本编辑器与IDE的使用*...
首先,`main.java` 是一个Java源代码文件,它的名字表明它是程序的主入口点。在Java中,`main` 方法是每个可执行程序的核心,因为它标志着程序执行的开始。`public static void main(String[] args)` 是Java程序的...