day11

作者: 775444e2a800 | 来源:发表于2018-05-18 13:18 被阅读4次
package com.heima.test;

public class Test11 {
    public static void main(String[] args) {
//        demo01();     //hascode hashcode地址值
//        demo02();     //Class 获得字节码文件
//        demo03();     //重写父类的tostring方法
//        demo04();     //重写父类的equls方法
    }

    public static void demo04() {
        /*
        1.这是父类的equls方法
        2.==比较的是地址值
        3.一般子类重写父类的equls方法,来比较属性值
        4.基本数据类型==比较的是值,引用数据类型比较的是地址值
        public boolean equals(Object obj) {
            return (this == obj);
        }
        */
        Studenttest stu1=new Studenttest("张三",33);
        Studenttest stu2=new Studenttest("张三",33);
        boolean b=stu1.equals(stu2);
        System.out.println(b);
    }

    public static void demo03() {
        /*
        1.这是object的toString方法,方法中省略了【this.】
        2.直接打印对象的引用,默认调用toString方法
        3.子类默认都继承顶级父类,故:在new子类对象时,省略的【this.】默认指向子类对象
        public String toString() {
            return getClass().getName() + "@" + Integer.toHexString(hashCode());
        }
        */
        Studenttest stu=new Studenttest("张岩",88);
        String str=stu.toString();
        System.out.println(str);
    }

    public static void demo02() {
        Studenttest s02=new Studenttest();
        Class clazz=s02.getClass();
        String name=clazz.getName();
        System.out.println(name);
    }

    public static void demo01() {
        Object ob=new Object();
        int i=ob.hashCode();
        System.out.println(i);
    }
}

class Studenttest{
    //成员属性
    private String name;
    private int age;

    //构造方法
    public Studenttest(){

    }
    public Studenttest(String name,int age){
        this.name=name;
        this.age=age;
    }

    //get方法
    public String getName() {
        return name;
    }
    public int getAge() {
        return age;
    }

    //set方法
    public void setAge(int age) {
        this.age = age;
    }
    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "我的名字是"+name+","+"我的年龄是"+age;
    }

    @Override
    public boolean equals(Object obj) {
        Studenttest stu=(Studenttest)obj;
        return (name==stu.name)&&(age==stu.age);
    }
}

相关文章

网友评论

      本文标题:day11

      本文链接:https://www.haomeiwen.com/subject/eklgdftx.html