Thinking in JAVA 习题练习 45页 第二题 Dog 索引 比较 简简单单 见笑了!

来源:互联网 发布:战舰世界弗莱彻数据 编辑:程序博客网 时间:2024/05/18 15:24


class Dog{
 String name;
 String says; 
 
 void setNameSays(String name,String says) {
  this.name = name;
  this.says = says;
 }
 
 void showNameSays() {
  System.out.println(name +"的叫声是"+says);
 } 
}

public class DogTestCopare{
 public static void main(String args[]) {
  Dog spot = new Dog();
  Dog scruffy = new Dog();
  spot.setNameSays("spot","Ruff");  
  scruffy.setNameSays("scruffy","Wurf");  
  scruffy.showNameSays();
  spot.showNameSays(); 
  
  System.out.println("与索引的比较");
  Dog spot1 = new Dog();
  spot1.setNameSays("spot1", "Ruff1");
  System.out.println("这种情况下spot和spot1不管是==还是equal都是不等," +
    "因为比较的是两个对象,内容也不相等");
  
  System.out.println("spot1 = spot之后");
  spot1 = spot;
  spot1.showNameSays();
  spot.showNameSays();
  //输出结果的原因是spot1指向了原来spot指向的那个对象;
  
  spot1.setNameSays("spot", "Ruff");
  System.out.println("spot.equal(spot1)"+  spot.equals(spot1));
  //只知道是因为dog类没有重写equal()方法,所以结果是false;  
 }
}

原创粉丝点击