Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当我将某个类变量重新分配给新对象时会发生什么?_Java_Oop - Fatal编程技术网

Java 当我将某个类变量重新分配给新对象时会发生什么?

Java 当我将某个类变量重新分配给新对象时会发生什么?,java,oop,Java,Oop,所以我对JAVA的理解是,在第一行中,创建了SomeClass的classvar对象。 在下一行中,创建了另一个classvar对象 我的问题-这里会发生什么变化?classvar对象的引用是否会因为第二行而更新,或者第1行中创建的对象将被垃圾收集 编辑:添加代码标记这是一个编译错误,在java中不能有两个同名的变量 如果你是说 SomeClass classvar = new SomeClass(); --> Object classvar = new SomeClass(); --&

所以我对JAVA的理解是,在第一行中,创建了SomeClass的classvar对象。 在下一行中,创建了另一个classvar对象

我的问题-这里会发生什么变化?classvar对象的引用是否会因为第二行而更新,或者第1行中创建的对象将被垃圾收集


编辑:添加代码标记

这是一个编译错误,在java中不能有两个同名的变量

如果你是说

SomeClass classvar = new SomeClass(); --> Object 
classvar = new SomeClass(); --> Object 2

然后第一个对象引用第一个对象将被新引用覆盖。下次gc运行时,它将被删除。

这是一个编译错误,在java中不能有两个同名的变量

如果你是说

SomeClass classvar = new SomeClass(); --> Object 
classvar = new SomeClass(); --> Object 2

然后第一个对象引用第一个对象将被新引用覆盖。下次gc运行时,它将被删除。

这是一个编译错误,在java中不能有两个同名的变量

如果你是说

SomeClass classvar = new SomeClass(); --> Object 
classvar = new SomeClass(); --> Object 2

然后第一个对象引用第一个对象将被新引用覆盖。下次gc运行时,它将被删除。

这是一个编译错误,在java中不能有两个同名的变量

如果你是说

SomeClass classvar = new SomeClass(); --> Object 
classvar = new SomeClass(); --> Object 2

然后第一个对象引用第一个对象将被新引用覆盖。下次gc运行时,它将被删除。

我想您可能会问:

SomeClass classvar = new SomeClass(); --> Object 1
classvar = new SomeClass(); --> Object 2
如果是这样,那么创建的第一个SomeClass对象将丢失其引用,并最终被垃圾收集(这意味着该对象将被销毁以释放内存)


classvar变量现在将引用创建的第二个SomeClass对象。

我想您可能会问:

SomeClass classvar = new SomeClass(); --> Object 1
classvar = new SomeClass(); --> Object 2
如果是这样,那么创建的第一个SomeClass对象将丢失其引用,并最终被垃圾收集(这意味着该对象将被销毁以释放内存)


classvar变量现在将引用创建的第二个SomeClass对象。

我想您可能会问:

SomeClass classvar = new SomeClass(); --> Object 1
classvar = new SomeClass(); --> Object 2
如果是这样,那么创建的第一个SomeClass对象将丢失其引用,并最终被垃圾收集(这意味着该对象将被销毁以释放内存)


classvar变量现在将引用创建的第二个SomeClass对象。

我想您可能会问:

SomeClass classvar = new SomeClass(); --> Object 1
classvar = new SomeClass(); --> Object 2
如果是这样,那么创建的第一个SomeClass对象将丢失其引用,并最终被垃圾收集(这意味着该对象将被销毁以释放内存)



classvar变量现在将引用创建的第二个SomeClass对象。

OK,在这种情况下会发生什么-->SomeClass var=new SomeClass();var=新的SomeClass();是否会创建两个对象,其中第一个对象现在有一个空引用?@akshayrajkore what case?更改您的问题以反映您在评论中所说的内容,因为它们不匹配。我和安德烈·帕金斯的答案基本上都是相同的。。非常感谢。感谢您的帮助。好的,在这种情况下会发生什么-->SomeClass var=new SomeClass();var=新的SomeClass();是否会创建两个对象,其中第一个对象现在有一个空引用?@akshayrajkore what case?更改您的问题以反映您在评论中所说的内容,因为它们不匹配。我和安德烈·帕金斯的答案基本上都是相同的。。非常感谢。感谢您的帮助。好的,在这种情况下会发生什么-->SomeClass var=new SomeClass();var=新的SomeClass();是否会创建两个对象,其中第一个对象现在有一个空引用?@akshayrajkore what case?更改您的问题以反映您在评论中所说的内容,因为它们不匹配。我和安德烈·帕金斯的答案基本上都是相同的。。非常感谢。感谢您的帮助。好的,在这种情况下会发生什么-->SomeClass var=new SomeClass();var=新的SomeClass();是否会创建两个对象,其中第一个对象现在有一个空引用?@akshayrajkore what case?更改您的问题以反映您在评论中所说的内容,因为它们不匹配。我和安德烈·帕金斯的答案基本上都是相同的。。非常感谢。感谢您的帮助。您的意思是
SomeClass classvar=newsomeclass();classvar=newsomeclass()?你的问题是什么?我不明白…@Elist那很好。我得到了答案。。我想问你在第一条评论中写了什么。你的意思是
SomeClass classvar=newsomeclass();classvar=newsomeclass()?你的问题是什么?我不明白…@Elist那很好。我得到了答案。。我想问你在第一条评论中写了什么。你的意思是
SomeClass classvar=newsomeclass();classvar=newsomeclass()?你的问题是什么?我不明白…@Elist那很好。我得到了答案。。我想问你在第一条评论中写了什么。你的意思是
SomeClass classvar=newsomeclass();classvar=newsomeclass()?你的问题是什么?我不明白…@Elist那很好。我得到了答案。。我想问你在第一次评论中写了什么。是的。我也在问同样的问题。谢谢,是的。我也在问同样的问题。谢谢,是的。我也在问同样的问题。谢谢,是的。我也在问同样的问题。非常感谢。