请问equals()方法体默认是怎么写的?

来源:9-9 Java 中的 Object 类 Ⅱ

_Jack_Han_

2016-01-17 17:04

请问equals()方法体的默认写法是什么?谢谢。


写回答 关注

3回答

  • yx杨旭
    2016-01-17 18:34:43
    已采纳

    package cn.yangxu;

    class P{

    private int age;

    private String name;

    public P(int age, String name) {

    super();

    this.age = age;

    this.name = name;

    }

    public int getAge() {

    return age;

    }

    }

    public class EqualsClass extends Object{

    static int AGE=10;

    public boolean equals(P person){

    return EqualsClass.AGE==person.getAge();

    }

    public static void main(String[] args) {

    P person = new P(10,"lisi");

    boolean bool = new EqualsClass().equals(person);

    System.out.println(bool);

    }

    }

    你看看,是这样的 equals方法主要返回的是bool值

    _Jack_...

    boolean bool = new EqualsClass().equals(person);这句看不懂,能帮我讲下这句的语法吗? public boolean equals(P person){ person对象在哪里声明的呢? 剩下的都看懂了,很详细,谢谢。

    2016-01-18 23:59:33

    共 2 条回复 >

  • yx杨旭
    2016-01-17 18:23:02

    不是的,其实主要就是一个判断。

    /**

         * Returns true if the specified object is equal to this

         * enum constant.

         *

         * @param other the object to be compared for equality with this object.

         * @return  true if the specified object is equal to this

         *          enum constant.

         */

        public final boolean equals(Object other) {

            return this==other;

        }


  • qq_梦幻江湖_0
    2016-01-17 17:44:50

    你直接打开source,然后再打开他就自动生成默认equal,你就可以自己参考了

    _Jack_...

    为什么我手写equals方法还报错,一定要用source添加吗?代码没写错,照着写也检查过。

    2016-01-17 17:58:44

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530649 学习 · 6091 问题

查看课程

相似问题