论Java对象的比较技巧.pdfVIP

  • 7
  • 0
  • 约1.51万字
  • 约 4页
  • 2017-05-17 发布于北京
  • 举报
论Java对象的比较技巧.pdf

|旺。阳 论Java对象的比较技巧 钱宇虹 (武汉职业技术学院计算机技术与软件工程学院湖北武汉 430074 ) 摘要: Java对象的比较是初学者不易掌握的.本文对与对象的比较密切相关的儿个重要概念,如类与对象的关 系 类与对象在内存中的存储 对象和对象的引用 对象引用的比较和对象内容的比较等进行了深刻的 剖析,随后给出了解决自定义对象比较的两种方法,即:运用Compara tor接口实现比较算法,和运用Comparable 接口实现可比较的对象,并对这两种方法进行对比,指出应用的场景 关键词: Java对象的比较;对象的引用;自定义对象的比较; Compara tor接口; Comparable接口 在Java语言开发过程中,常常需要对对象进行比较。例如, 对象蹈,才会在内存中为对象分配存储空间。当我们用闰…个类 在IF等结构语句中需要根据对象比较所得出的结果来进行相关处 创建不同的对象时, JVM会在内存中为不同的对象分配不同的存 理。但是Java对象毕竟跟普通的变f毫不间,要比较两个对象是否 储~闷。也就是说,不同的对象会对应不同的内存地址。 虽然同 相同,跟比较两个变蠢的值是否相间有很大的差异。需者在本文 …个类可以创建多个对象,其内容可能相同(成员变量、成员方法 中,对Java对象的比较问题做出深刻的理解和分析,溃清初学者 等等都相同),但是每个对象在内存中的地址是不同的。 容易混淆的几个重要概念,给出进行Java对象比较的方法和代 1.3 对象和对象的引用[11 码。 对象的引用在英文中是reference,对象和对象的引用是容扇 j昆淆却又必须掌握的基础知识。先看下面的程序片断: 1 跟对象比较相关的重要概念 Student y; 1. 1 ~慧与对象的关系 y ::: new StudentO; 在面向对象的编程谓宫中,类是稳序的基本单元,它有…个 第…行语句声明了…个变.y,但是我们还没有在内存中创建 类名并包括属性说明和服务说明两个ì:要部分。类与对象的关系 对象,此时变量y 只是有可能成为一个Student对象的引用,它当 就如同设计阁纸与产品的关系。例如:自行车设计阁,虽然设计 前的值为 null 。第二行语句使用 new操作符在内存中创建了一个 图纸只有一张,但是根据图纸我们可以生产出一批自行车产品。 对象,我们可以把新创建的对象想象成一个篮气球,引用变量y 设计图纸为所有同类型自行车提供了统一的抽象描述,就如同类 是紧紧抓住这只气球的绳子,如圈1 所示: 是具有相同属性和为法的一组对象的抽象描述;自行车的生产过 程就如同类的实例化过程,当我们定义好了类,实例化结泉就是 对象,有了类这…模版,我们可以通过实例化创建多个对象,而 这些对象的共闰特征可以归并到同一个类中去。所以,类的实例 化结果就是对象,而对…类对象的拙象就是类。 1. 2 类与对象在内存中的存储 当程序员定义一个类时,只要不含静态成员变量和方法, y Java虚拟机 (JVM l 不会在内待中给其分配存储空间,只有创建 因 1 对象的引用 作者简介:钱宇虹,女,计算机科学硕士,从事软件开发与应用、软件工程、软件测试技术方面的教学、科研和开发. 50 我们也可以创建…个新的对象,但是并没有把它赋给…个引 y = z; //y失去对对象俐的引用,转而引用对象#2 用变量,如下所示: new StudentO; 这样的对象就好像飞掉的氧气球,在我们的程序中永远无法 访问。 请注意,我们可以将以上两行语句合二为一,即声明…个引 用变量y ,并创建一个

文档评论(0)

1亿VIP精品文档

相关文档