JAVA源码阅读之----Object (1)

在 Object 源码中

方法一: registerNatives();
第一行有一个 native修饰的没有大括号的方法.
这里native表示该方法的实现不在本文件中,而是由其它语言(例如C,C++)编写实现的.

private static native void registerNatives();
static {
   registerNatives();
}

注意,上面代码中此方法为静态私有方法,通过类的静态代码块执行.为JAVA程序最开始执行的方法,且程序运行期间只会执行一次的方法.

方法二:getClass();

public final native Class<?> getClass();

结合第一个方法所讲,该方法也是由其它语言编写实现的,为获得类的字节码文件方法.

方法三:hashCode();

  public native int hashCode();

该方法用一个32位整数来代表该类位于内存中的位置(非真实地址).子类均可以进行重写.该方法的主要作用是判断两个对象是否一致.

方法四:equals(Object obj);

 public boolean equals(Object obj) {
    return (this == obj);
 }

该方法用来判断两个对象是否一致,JAVA中默认是比较两个对象的地址是否相同.子类若需要使用建议覆盖equals与hashCode方法.JAVA中所有对象比较是否相同均建议使用equal,否则可能造成意想不到的错误.例如Integer对象不建议使用==进行判断.

方法:clone();

protected native Object clone() throws CloneNotSupportedException;

该方法作用克隆该类.子类如需使用建议覆盖.且该克隆应该为深度复制而非浅复制

方法:toString();

public String toString() {
    return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

该方法为以字符串形式表示字符串,默认展示类的内存地址(伪地址)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
XMLBeans 是一个基于 XML 数据绑定技术的开库,它允许 Java 开发人员通过对象模型访问 XML 文档。 XMLBeans 使用了 XSD(XML Schema Definition)文件作为输入,根据该文件生成 Java 类,这些类用于处理和操作 XML 数据。 XMLBeans 2.6.0 是 XMLBeans 的一个版本,其码是该版本的代码。这份码包含了实现 XMLBeans 功能所需的各种 Java 类和接口。 在 XMLBeans 码中,有以下主要组件: 1. SchemaTypeSystem:该组件定义了 XMLBeans 使用的数据类型系统。它包括 XSD 的类型映射以及各个类型的限制和约束。 2. XmlObject:该组件是 XMLBeans 最基本的对象类型。它代表了一个 XML 元素或属性,并提供了访问和修改 XML 数据的方法。 3. XmlCursor:该组件是一个游标,用于遍历和修改 XmlObject 中的 XML 数据。它提供了类似于指针的功能,允许对 XML 文档进行精确的定位和操作。 4. SchemaType:该组件是一个 XML 类型的抽象表示。它定义了 XML 类型的属性和方法,并提供了 XML 数据的验证和序列化功能。 5. XsdLoader:该组件用于加载和解析 XSD 文件,并根据 XSD 文件生成对应的 Java 类。 6. XmlOptions:该组件是一组用于配置和控制 XMLBeans 行为的选项。它定义了各种参数和标志位,可以影响 XMLBeans 的运行方式。 XMLBeans 2.6.0 码中还包含了许多其他的类和接口,用于实现 XML 数据的读取、写入、验证等功能。这些码文件经过良好的设计和组织,使得开发者能够方便地理解和扩展 XMLBeans 的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值