`

对象、引用的关系

阅读更多

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.math.BigDecimal;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.omg.SendingContext.RunTime;


public class Test {
   private Date date;
   private String x;
   public static String m;
  
  
 public String getX() {
 return x;
    }
 static{
  System.out.println("静态默认执行");
 }
 public static void getProperty()
 {
  System.out.println("得到属性值");
 }

public void setX(String x) {
 this.x = x;
}

 public Date getDate() {
 return (Date) date.clone();
}

   public void setDate(Date date) {
 this.date = date;
}

 /**
  * @param args
  * @throws IOException
  */
 public static void main(String[] args) throws IOException {
     Test t = new Test();
      t.setX("a");
     Test t2 = new Test();
     t2.setX("b");
     swap(t,t2);
     System.out.println(t.getX()+"    " +t2.getX());
     //如果传递的是引用的话
     Test tem = new Test();
      tem =t;
      t = t2;
      t2 =tem;
      System.out.println(t.getX()+"    " +t2.getX());
 } 
 public static void swap(Test x , Test y){  // x , y 为分别为上面对象 test@.. 和对象 test@.. 的一个引用,而上面2的t  和 t2 也分别是两个对象的引用,这样的话也就是说现在每个对象分别有两个引用  t 、x    t2、y
  x.setX("xx");
  Test tem = new Test();
  tem =x;
  x =y;
  y = tem;   //交换的只是他们引用的名称
  System.out.println(y.getX());  
 }

}

 

以上说明了 对象可以有多个引用每个对象的引用的名称变化,是不影响对象的情况的,但是对引用的操作即对对象的操作。

分享到:
评论

相关推荐

    基于对象引用关系图的Android恶意代码检测的研究1

    针对对象引用关系图的特性,本文对VF2算法进行了改进,添加了新参数以控制匹配精度,使得算法更适应于对象引用关系图的匹配需求。同时,分析了算法的时间复杂度和空间复杂度,以评估其实用性和效率。 【检测系统...

    java对象和对象的引用之间的关系

    在Java编程语言中,理解对象和对象引用之间的关系是非常重要的基础。对象是类的一个实例,而对象引用则是用于访问该对象的一种手段。下面将详细探讨这两个概念。 #### 二、对象的创建过程 在Java中,当我们创建一...

    Java中对象与引用对象的关系

    Java中对象与引用对象的关系 在 Java 中,对象和引用对象的关系是一个非常重要的概念。从宏观的角度来看,对象是类的实例。例如,我们可以定义一个名为 Someone 的类,代表一些人(通过指定年龄、性别、性格等基本...

    内存泄漏引用关系图

    Heap_walker_References.html通常是一个内存分析工具的输出结果,它展示了堆内存中的对象引用关系。在这个文件中,你可以找到: 1. **对象概览**:列出所有类的实例数量和占用的内存大小,帮助识别可能的泄漏候选者...

    Java中对象与引用

    本文将从以下几个方面详细解析对象与引用的基本概念及其相互间的关系。 #### 一、对象与引用的基础概念 **对象**: 在Java中,对象是类的一个实例,即根据类的模板创建出来的具体实体。每个对象都有自己的属性(如...

    对象与引用之间的概念

    2. **对象与引用的关系**:`veh1`是一个指向`Vehicle`对象的引用,它存储了该对象的地址,而不是对象本身。 3. **对象的名称**:在内存中创建的对象并没有明确的名字,我们只能通过引用(如`veh1`)来访问它。 ###...

    java中对象和对象引用的区别!

    在Java中正确地区分对象与对象引用是非常重要的,这不仅关系到程序的正确性,也影响到资源管理和性能优化。理解了这些基本概念之后,开发者能够更加灵活地运用Java进行开发工作,避免常见的错误和陷阱。

    c# DataGridView 导出数据到sql中出现错误“未将对象引用设置到对象实例中”

    DataGridView 导出数据到 SQL 中出现错误“未将对象引用设置到对象实例中” 在 C# 中,DataGridView 控件广泛应用于数据展示和编辑,但是在导出数据到 SQL 中时,常常会出现“未将对象引用设置到对象实例中”的错误...

    引用和对象的关系,还有值传递

    - **对象引用**:当传递对象引用时,也是传递引用的副本。这意味着修改方法内的引用值(指向其他对象)不会影响到原始引用,但修改该引用所指向的对象的状态(如对象属性)会影响到原始引用。 #### 结论 理解Java...

    Java基础:对象及引用祥解

    2. **对象的参数传递**:当传递对象作为参数时,实际上传递的是对象引用的副本。这意味着在方法内部对这个引用所做的任何更改都不会影响到原始引用。但是,如果通过该引用修改了对象本身的状态,则会影响到原始引用...

    引用变量和对象

    在编程语言中,如Java或C#,"引用变量"和"对象"是两个关键概念,它们构成了程序中数据操作的基础。引用变量是存储在内存中的一个特殊类型的变量,...理解引用变量和对象的关系对于编写高效、无内存泄漏的代码至关重要。

    java对象引用易混解析

    ### Java对象引用详解 #### 一、Java对象与引用的基本概念 在Java中,对象是类的一个实例,而引用则是指向这些对象的变量。理解Java中的对象与引用之间的区别至关重要,因为这涉及到如何管理和操作对象。 #### 二...

    对象引用与对象的区别

    1. **一对一关系**:一个对象引用可以指向零个或一个对象。如果一个引用变量未指向任何对象,则其值为`null`。 2. **多对一关系**:一个对象可以被多个引用指向。这意味着不同的引用可以共享同一个对象。 例如: `...

    对象-关系数据库之间的映射.pdf

    ### 对象-关系数据库之间的映射 #### 重要概念与挑战 对象-关系数据库映射(Object-Relational Mapping,ORM)是连接面向对象编程语言和关系型数据库系统的桥梁。面向对象设计与关系数据库设计之间的差异,源于...

    flex内存泄露(转载)

    主要原因是对象引用关系导致垃圾收集器误判某些对象仍处于活动状态。具体而言: 1. **对象引用不当:** 当某个对象实际上已经不再需要,但由于其他活动对象间接或直接地保持对该对象的引用时,垃圾收集器将无法回收...

    hibernate中的对象关系模型

    在Java持久化框架Hibernate中,对象关系模型(Object-Relational Mapping,ORM)是将数据库中的数据映射到Java对象的技术。它使得开发者能够用面向对象的方式来操作数据库,简化了数据库编程的过程。以下是对...

    JVM 50 道面试题及答案.docx

    强引用是普通的对象引用关系;软引用用于维护一些可有可无的对象,软引用对象只有在内存不足时才会被回收;弱引用拥有更短的生命周期,弱引用对象在GC时都会被回收;虚引用的生命周期最短,主要用来跟踪对象被垃圾...

Global site tag (gtag.js) - Google Analytics