• 0125 java API object


    API 应用程序接口

    object是所有java类中的父类(介绍object中两个方法)

    1、equals方法

    返回值类型Boolean,调用格式equals(object obj);含义:指某个对象是否与此对象相等

    例:创建一个Person类

    public class Person {
    
    	private String name;
    	private int age;
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    	public int getAge() {
    		return age;
    	}
    	public void setAge(int age) {
    		this.age = age;
    	}
    	public Person(String name, int age) {
    		super();
    		this.name = name;
    		this.age = age;
    	}
    	public Person() {
    		super();
    	}
    }
    

      创建一个测试类

    public class Demo01 {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    
    		Person p=new Person("小红帽",18);
    		Person p2=new Person("小红帽",18);
    		//比较两个对象是否相等
    		System.out.println(p.equals(p2));
    	}
    
    }
    

      此时的运行结果为false。因为,此时equals对比的p和p2这两个Person对象的地址值,所以是false,如果我们想对比两个对象的内容,则需要重写这个equals方法,在Person类中重写

    代码展示:

    public boolean equals(Object obj) {
    		if(obj==null){
    			return false;
    		}
    		if(obj==this){
    			return true;
    		}
    		// TODO Auto-generated method stub
    		if(obj instanceof Person){
    			Person p=(Person)obj;
    			return this.name.equals(p.name)&&this.age==p.age;
    		}
    		return false;
    		
    	}

      这是测试类再运行,运行结果就是true了

    2、toString方法

    返回值是String类型,返回该对象的字符串表示

    依据上述Person类创建一个测试类

    public class Demo02 {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    
    		Person p=new Person("海绵宝宝",21);
    		System.out.println(p.toString());
    		System.out.println(p);
    	}
    
    }
    

      此时的运行结果为两行地址代码,p.toString()和直接打印p 是一个意思

    在Peson类中重写这个方法

    代码展示:

    public String toString() {
    		return "Person [name=" + name + ", age=" + age + "]";
    	}
    

      此时的运行结果为:

    Person [name=海绵宝宝, age=21]
    Person [name=海绵宝宝, age=21]

  • 相关阅读:
    Python采用struct处理二进制
    OVS处理upcall流程分析
    mybatis在CRUD
    leetcode先刷_Valid Sudoku
    [TS] Implement a doubly linked list in TypeScript
    [TS] Implement a singly linked list in TypeScript
    [Python] The get() method on Python dicts and its "default" arg
    [Javascript AST] 4. Continue: Report ESLint error
    [RxJS] Learn How To Use RxJS 5.5 Beta 2
    [NPM] Update published npm packages using np
  • 原文地址:https://www.cnblogs.com/-gongxue/p/14326048.html
Copyright © 2020-2023  润新知