Java基础小常识-Object类-(15)

一、演示实例1

/*

Object:所有类的根类。

Object是不断抽取而来,具备着所有对象都具备的共性内容。

常用的共性功能:

*/
/*
class Fu // extends Object
{
    Fu()
    {
        super();
    }
}
class Zi extends Fu
{
    Zi()
    {
        super();
    }
}
*/

class Person extends Object
{
    private int age;
    Person(int age)
    {
        this.age = age;
    }
    /*
    //比较Person的年龄。是否是同龄人
    public boolean compare(Person p)
    {
        return this.age == p.age;    
    }
    */

/*
    一般都会覆盖此方法,根据对象的特有内容,建立判断对象是否相同的依据。
    */

public boolean equals(Object obj)//Object obj = p2;
    {
        if(!(obj instanceof Person))
        {
//            return false;
            throw new ClassCastException("类型错误");
        }
        Person p = (Person)obj;
        return this.age == p.age;
    }
/*
    public int hashCode()
    {
        return age;
    }
*/

public String toString()
    {
        return "Person :"+age;
    }
}
class Demo
{
}

class  ObjectDemo
{
    public static void main(String[] args)
    {
        Person p1 = new Person(60);
        Person p2 = new Person(20);
        Demo d = new Demo();
//        System.out.println(p1.equals(p2));

//        System.out.println(p1);
//        System.out.println(Integer.toHexString(p1.hashCode()));

//        Class clazz1 = p1.getClass();
//        Class clazz2 = p2.getClass();
//        System.out.println(clazz1==clazz2);
//        System.out.println(clazz1.getName());

System.out.println(p1.toString());//[email protected]
        System.out.println(p1.getClass().getName()+"$"+Integer.toHexString(p1.hashCode()));//[email protected]

//        Person p3 = p1;

//        Demo d = new Demo();

//        System.out.println(p1==p2);
//        System.out.println(p1.equals(p2));
    }
}

时间: 2024-08-02 11:01:54

Java基础小常识-Object类-(15)的相关文章

java基础学习总结——Object类

永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! java基础学习总结——Object类 一.Object类介绍 Object类在JAVA里面是一个比较特殊的类,JAVA只支持单继承,子类只能从一个父类来继承,如果父类又是从另外一个父类继承过来,那他也只能有一个父类,父类再有父类,那也只能有一个,JAVA为了组织这个类组织得比较方便,它提供了一个最根上的类,相当于所有的类都是从这个类继承,这个类就叫Object.所以Object类是所有JAVA类的根基类,是所有JAVA类的老祖宗.

[ 转载 ] Java基础10--关于Object类下所有方法的简单解析

关于Object类下所有方法的简单解析 类Object是类层次结构的根类,是每一个类的父类,所有的对象包括数组,String,Integer等包装类,所以了解Object是很有必要的,话不多说,我们直接来看jdk的源码,开始我们的分析之路 1.hashcode() public native int hashCode();//native说明跟机器有关,跟对象的地址有关 如果我们新建一个类,而hashcode没有被重写的话,那么hashcode返回的值只于对象的地址有关,如果hashcode被重

Java基础教程(19)--Object类

??Object类位于类结构树的最顶端,所有的类都是它的直接或间接子类,因此所有的类都继承了Object类的方法,我们可以在需要的时候覆盖这些方法.下面是一些将会在本文中讨论的Object类的方法: protected Object clone() throws CloneNotSupportedException ??创建并返回此对象的副本. public boolean equals(Object obj) ??判断某个对象是否与这个对象"相等". protected void f

Java基础10:object类

Object类 这部分主要参考http://ihenu.iteye.com/blog/2233249 Object类是Java中其他所有类的祖先,没有Object类Java面向对象无从谈起.作为其他所有类的基类,Object具有哪些属性和行为,是Java语言设计背后的思维体现. Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入.Object类没有定义属性,一共有13个方法,13个方法之中并不是所有方法都是子类可访问的,一共有9个方法

Java基础—API及Object类和String类

Java 的API(API: Application(应用) Programming(程序) Interface(接口)) Java API就是JDK中提供给我们使用的类,这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可. 1.Object类  Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.所有类在创建对象的时候,最终找的父类就是Object.   equals方法    equals方法,用于比较两个对象

Java基础小常识(3)

一.函数 1.静态函数只能调用静态函数,所谓静态函数,指的是函数名中有"static"这个关键字 如: public static void mian(String args[]) { int c=add1(3,4); } public static int add1(int a,int b) { return a+b; } 注:如果add1中没有static关键字,main函数将无法调用add1,会出现编译错误. 2.函数定义类型 修饰符 返回值类型 函数名(参数1,参数... )

Java基础小常识-继承-(10)

一.继承的好处 1.好处: 1)提高了代码的复用性 2)让类与类之间产生了关系,给第三个特征多态提供了前提 2.Java中支持单继承,不直接支持多继承,但对c++中的多继承机制进行了改良. 3.单继承:一个子类只能有一个直接父类 4.多继承:一个子类可以有多个直接父类(Java中不允许,所以进行改良),不直接支持,因为多个父类中有相同的成员,会产生调用不确定性.在Java中通过"多实现"的方式来体现 5.Java支持多层(多重)继承. 例:C继承B,B继承A,就会出现继承体系 当要使用

Java基础小常识

一.模问题 1.负数模整数,结果为负数,例:-5%2 = -1: 2.正数模负数,结果为正数,例:5%(-2)=1: 3.负数模负数,结果为负数,例:-5%(-2)=-1: 4.0模任何数结果为0,例:0%5 = 0: 二.自增.减问题 1. 三.强制类型转换 1.System.out.println('a'+0),输出=97: 2.任何以整数出现的数据,默认都是int类型 如:byte a= 4; 其中4就是一个int类型,但由于在编译过程中,编译器会自动判断 4 是不是在byte 范围内,若

Java基础小常识- 单例设计模式,-(9)

一.单例设计模式 1.定义:就是可以保证一个类在内存中的对象唯一性,单例设计模式有两种方式,一种饿汉式(实际开发中用),一种懒汉式(面试中用) 必须对于多个程序使用同一个配置信息对象时,就需要保证该对象的唯一性. 2.如何保证对象唯一性 1)不允许其他程序用new创建该类对象 2)在该类创建一个对象实例 3)对外提供一个方法让其他程序可以过去该对象 3.实现步骤 1)私有化该类构造函数 2)通过new在本类中创建一个本类对象 3)定义一个公有的方法,将创建的对象返回 4.实例演示 //饿汉式,类