Object类

(1)Object简介

Object类是一切类的父类,所有的类默认继承了Object类。

任何对象都能被Object接收。

class Person extends Object{

};

public class ObjectDemo02{

       public static void main(String arg[]){

              Object obj1 = new Person() ;

              Object obj2 = "hello" ;

       }

};

Object不光可以接收类的引用,只要是引用数据类型都可以使用Object类接收

interface National{}

class Person extends Object implements National{

};

public class ObjectDemo03{

       public static void main(String arg[]){

              National na = new Person() ; // 子类为接口实例化

              Object obj = na ;    // 使用Object接收接口实例

              National temp = (National)obj ;

       }

};

Object接收数组,

public class ObjectDemo04{

       public static void main(String arg[]){

              int i[] = {1,2,3,4,5,6,7,8} ;    // 数组

              Object obj = i ;       // 使用Object接收数组

              int x[] = (int[]) obj ;       // 向下转型

              for(int j=0;j<x.length;j++){

                     System.out.print(x[j] + "") ;

              }

       }

};

(2)Object类中的方法

public  String  toString()//对象打印时调用

public  boolean  equals(Object  obj)//对象比较时调用,

class Person{

       public String toString(){ // 覆写了toString()方法

             return "Hello" ;

       }

};

public class ObjectDemo05{

       public static void main(String arg[]){

              System.out.println(new Person()) ;

       }

};

此程序中person类继承了toString()方法,打印了person类的对象就相当与person类的对象调用了toString方法,但是person中将toString覆写,那么此时打印对象调用的就是覆写的方法。

(3)equals,进行对象比较

public boolean equals(Object obj){       // 是完成对象的比较操作

              if(this==obj){  // 两个地址相等

                     return true ;

              }

              if(!(obj instanceof Person)){  // 不是同一个类型

                     return false ;

              }

              Person per = (Person)obj ;

              if(this.name.equals(per.name)&&this.age==per.age){

                     return true ;

              }else{

                     return false ;

              }

       }

Object可以接收任意类型的对象引用。

原文地址:https://www.cnblogs.com/jinzhengquan/p/1941539.html