日常作业2019.1.19

作业

重新equals

企鹅类

/**
 *     企鹅类
 * @author Administrator
 *
 */
public class Penguin {
    String name;
    int age;
    public Penguin(String name,int age) {
        this.name=name;
        this.age=age;
    }
}
    

狗类 加 测试类

/**
 *     狗类
 * @author Administrator
 *
 */
public class Dog {
    /**
     *     狗类
     */
    String name;
    int age;
    public Dog(String name,int age) {
        this.name=name;
        this.age=age;
    }

    /**
     *     重新equals方法
     */
    public boolean equals(Object a) {
        if(a instanceof Dog) {
            Dog b=(Dog)a;
            if(b.name.equals(name)&&b.age==age) {
                return true;
            }
        }
        return false;
    }

    /**
     *     测试类
     */
    public static void main(String[] args) {
        Dog a=new Dog("哈",5);
        Dog b=new Dog("哈",5);
        Penguin c=new Penguin("哈",5);

        System.out.println("狗a和狗b\t\t同名字同年龄\t"+a.equals(b));
        System.out.println("狗a和企鹅c\t\t同名字同年龄\t"+a.equals(c));
    }
}

运行

 

笔记

 

1、构造方法的作用是什么
创建对象
2、方法的重载有什么特点
在同一个类中,方法名相同,参数项必须不同,与访问修饰符和返回值类型无关
3、封装的步骤
私有化属性、生成setter/getter方法、在方法中添加条件
4、简述static的用法
static修饰变量、方法、代码块
是类级别,可以直接通过类来调用
类一加载就优先加载static修饰的部分、并且只加载一次
5、什么是继承
将子类中公有的属性和方法抽取出来生成一个父类,这就是继承

 

posted @ 2019-01-19 16:11  纸灰  阅读(105)  评论(0编辑  收藏  举报