欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java:object类 中常用equals()和 toString()方法的重写

程序员文章站 2022-07-08 17:56:59
...

知识总结:


equals()和toString()都是继承与Object父类下的方法!下面演示在方法内部对这两种方法的重写


equals()重写:(注意方法1需要对传入的参数进行类别转换;方法2则不需要!)

Java:object类 中常用equals()和 toString()方法的重写


测试代码注释补全:

Java:object类 中常用equals()和 toString()方法的重写



toString()方法重写:

重写前Animal.java:

package com.imooc.animal;

public class Animal {
   private String name="花花";
   protected int month=2;
  


public String getName() {
	return name;
}


public void setName(String name) {
	this.name = name;
}


public int getMonth() {
	return month;
}


public void setMonth(int month) {
	this.month = month;
}
   
  
  
}

重写后的:

package com.imooc.animal;

public class Animal {
   private String name="花花";
   protected int month=2;
  
//重写toString() 
public String toString(){
	return "昵称:"+this.getName()+";"+"年龄:"+this.getMonth();
}

public String getName() {
	return name;
}


public void setName(String name) {
	this.name = name;
}


public int getMonth() {
	return month;
}


public void setMonth(int month) {
	this.month = month;
}
   
  
  
}



test.java

package animal_Test;

import com.imooc.animal.Cat;

public class AnimalTest {

	public static void main(String[] args) {
		Cat one =new Cat();
        /*toString测试:
         * 1.输出对象名时,默认会直接调用类中的toString();
         * 2.继承Object类中的toString方法时,输出对象的字符串表现形式:类型信息aaa@qq.com+地址信息
         * 3.子类通过重写toString的方法形式,改变输出内容和表现形式
         */
		System.out.println(one.toString());
		System.out.println(one);
		System.out.println("====================");
		
	    String str1=new String("hello");
	    System.out.println(str1);
	    
	    
	}

}



不重写前toString()前,该函数直接继承Object类的函数,因此是通过:类型信息aaa@qq.com+地址信息打印出来

Java:object类 中常用equals()和 toString()方法的重写


重写toString()后:

Java:object类 中常用equals()和 toString()方法的重写