易截截图软件、单文件、免安装、纯绿色、仅160KB

java基础问题疑惑

12、分析下面的代码,其输出结果是( )。
  1. public class Test {
  2. public static void main (String [] args) {
  3. string foo = "blue";
  4. string bar = foo;
  5. foo = "green";
  6. System.out.printIn(bar);
  7. }
  8. }
  A. 一个异常抛出
  B. 代码无法编译
  C. null
  D. blue
  E. green
  知识点列表:4.1 系统定义的类(包)。
正确答案是选择D,我是选择E,我是认为在第四行,bar不是已经引用了foo的内存地址,然后又把”green“赋予给foo,不就相当与给foo里"blue"重新赋予green值吗,我搞混了,望高手请教下
string bar = foo;
这句话只是把 foo的值"blue"赋值上去
而不是地址啊,
你可以在第4句后面加
System.out.println(foo.equals(bar));
System.out.println(foo==bar);
第一个打印出true,第二个为false
表示值一样,而指向的内存地址不一样


答案应该选D

bar不是已经引用了foo的内存地址

bar和foo的内存地址是不同的
他们都指向相同的内容blue

之后foo的内容变成了green

但bar的内容还是blue

这题跟下面的道理是一样的:
Java code:
public static void change(String s) {
s = "222";
}

public static void main(String[] args) {
String s = "111";


相关问答:

java编译运行c程序,并显示结果

通过java程序,先编译c程序,如出现错误,提示C程序中的错误,编译成功就运行,显示C的运行结果,最好把C的运行时间和内存等都显示出来

各位大哥大姐帮帮忙,小弟感激不尽!
用java的进程类试试
我给你转 ......

java如何控制远程Linux重启

我目前在本地的linux上写了一个swing的界面,想通过这个界面来控制其它电脑的linux重启。
我知道用Runtime.getRuntime().exec("shutdown -r");可以控制本机Linux重启,但是怎么控制远程的linux重启呢? ......

关于jsp论坛 - Java / Web 开发

我现在想用ssh整合来做一个论坛,但数据库方面不行,我主要不会涉及数据库,不知道发帖表,和回帖表要如何设计和区分。不知道谁有一个简单的思路,来设计这些表。谢谢了。
发帖和回帖用同一张表 。发帖 id user ......

JAVA swing 中的按钮相应事件

现在遇到这样一个问题:
  在java 中编写swing程序, 添加按钮jbServerStart,目的是当点击jbServerStart时,程序会自动创建两个与其他终端通信的对象,代码如下:
private Container createButtonPane ......

java读取图片

Java code:

import java.awt.image.*;
import java.awt.*;
import java.io.*;
import javax.imageio.*;
public class ImageByte {
/**
* 转换Image数据为byte数组
*
* @param image ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号