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