黑马程序员技术交流社区

标题: 输出的结果是哪个?并告知为什么啊 [打印本页]

作者: honcarry    时间: 2016-5-30 23:53
标题: 输出的结果是哪个?并告知为什么啊
  1. class Z {
  2.         int x;
  3.         Z(int i) {
  4.                 x = i;
  5.         }
  6.         public static void main(String args[]) {
  7.                 Z m1 = new Z(100);
  8.                 Z m2 = new Z(100);
  9.                 if (m1.equals(m2)) {
  10.                         System.out.println("Both are equal");
  11.                 } else {
  12.                         System.out.println("Both are not equal");
  13.                 }
  14.         }
  15. }
复制代码

作者: 归宿123    时间: 2016-5-31 00:09
报错..         
作者: 元笙    时间: 2016-5-31 00:16
输出,else那个结果
要指出的是你的标识符命名的问题,太随意了;建议初学者标识符命名符合命名规范
下面是我对你程序的注释,希望对你理解有帮助
  1. class Z {
  2.         int x;                                                                                                                                //成员变量(属性)
  3.         Z(int i) {                                                                                                                        //有参构造器
  4.                 x = i;
  5.         }
  6.         public static void main(String args[]) {
  7.                 Z m1 = new Z(100);                                                                //在堆内存创建对象,调用有参构造器初始化
  8.                 Z m2 = new Z(100);                                                                //在堆内存创建另一个对象,调用有参构造器初始化(和上面属于2个不同对象)
  9.                 if (m1.equals(m2)) {                                                                //equals方法是比较2个对象的引用是否指向同一个对象
  10.                         System.out.println("Both are equal");
  11.                 } else {                                                                                                                //前面说过,m1和m2是在堆内存中不同位置的Z类对象,当然走else
  12.                         System.out.println("Both are not equal");
  13.                 }
  14.         }
  15. }
复制代码

作者: honcarry    时间: 2016-5-31 00:19
元笙 发表于 2016-5-31 00:16
输出,else那个结果
要指出的是你的标识符命名的问题,太随意了;建议初学者标识符命名符合命名规范
下面是我 ...

好的,学到了,谢谢啦。没办法这个是题目,谢谢啦
作者: honcarry    时间: 2016-5-31 00:21
归宿123 发表于 2016-5-31 00:09
报错..

没有报错啊,兄弟




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2