Java Object类,接收任意引用类型的对象详解

TK 2020-09-23 15:07:50 java常见问答 3844

下面的话要给大家讲到的就是Java Object类接收任意引用类型的对象方面的知识,一起通过文章内容来进行详细了解吧。

既然Object类是所有对象的父类,那么,所有的对象都可以向Object进行转换,在这当中也包含了数组和接口类型,也就是一切的引用数据类型都可以使用Object进行接收。

interface A
{
    public String getInfo();
}
class B implements A
{
    public String getInfo()
    {
        return "Hello World!!!";
    }
}
public class ObjectDemo04
{
    public static void main(String[] args)
    {
        // 为接口实例化
        A a = new B();
        // 对象向上转型
        Object obj = a;
        // 对象向下转型
        A x = (A) obj;
        System.out.println(x.getInfo());
    }
}

输出结果:

Hello World!!!

从上面的代码当中能够发现,虽然接口不能继承一个类,但是依然是Object类的子类,因为接口本身是引用数据类型,所以可以进行向上转型操作。

同样的,也能够使用Object接收一个数组,因为数组本身也是引用数据类型。

public class ObjectDemo05
{
    public static void main(String[] args)
    {
        int temp[] = {
            1
            , 3
            , 5
            , 7
            , 9
        };
        // 使用object接收数组
        Object obj = temp;
        // 传递数组引用
        print(obj);
    }
    public static void print(Object o)
    {
        // 判断对象的类型
        if (o instanceof int[])
        {
            // 向下转型
            int x[] = (int[]) o;
            // 循环输出
            for (int i = 0; i < x.length; i++)
            {
                System.out.print(x[i] + "\t");
            }
        }
    }
}

输出结果:

1 3 5 7 9

注意一下了,因为Object类能够接收任意的引用数据类型,所以在很多的类库设计上都采用Object作为方法的参数,这样操作起来会比较方便。

以上的内容你都了解了吗?更多相关知识,请继续来本站的java入门栏目进行了解。

推荐阅读:

Java Object类详细介绍

Java Object类,equals()方法介绍

Java Object类,getClass()方法介绍