Java day8【第十七章】Object类的基本概念

【第十七章】Object类的基本概念

一.Object 的基本概念:

Object类的主要特点是可以解决参数的统一问题,也就是说使用Object类可以接收所有的数据类型。

Object类简介:

  在Java中只有一个类是不存在有继承关系的,那么这个类就是Object,也就是说所有的类默认情况下都是Object类的子类

以下俩种类的定义效果完全相同。

class Person {}
class Person extends Object {}

  在Object类设计的时候考虑到了所有继承的问题,所以该类提供有无参数构造方法(子类调用默认调用父类的无参构造方法)。

  那么既然Object类是所有类的父类,那么这种情况下就可以使用Object类来接收所有子类对象。

  如果一个程序的方法要求可以接受所有类对象的时候就可以利用Object实现处理。

  但是还有一点需要注意,在Java程序制作对于所有的引用数据类型实际上都可以利用Object进行接收,包括数组也可以。

范例:使用Object类接收数组:

class Person{}

 public class tsy
{
	public static void main(String[] args) 
	{
		Object obj = new int [] {1,2,3};	//向上转型
		if(obj instanceof int[]){		
			int date[] = (int[])obj;
			for (int temp:date){
				System.out.println(temp);
			}
		}
	}
}

  Object是一个万能的数据类型,更适合于进行程序的标准设计。

二.取得对象信息(toString()):

  Object虽然是一个类,但是这个类本身也是提供有一些处理方法的。

  Object中的toString可以获取一个对象的完整信息:

class Person{}

 public class tsy
{
	public static void main(String[] args) 
	{
		Person per = new Person();
		System.out.println(per);
		System.out.println(per.toString());
	}
}
//输出Person@2a84aee7
//输出Person@2a84aee7

  可以发现在之前进行对象直接输出的时候所调用的就是toString()方法,所以这个方法调用和不调用是一样的

  所以在以后的开发之中对象信息的获得可以直接覆写此方法

范例:覆写toString:

class Person{
	private	String name;
	private int age;
	public Person(String name , int age){
		this.name = name;
		this.age = age;
	}
	public String toString(){
		return"姓名:"+this.name+"、年龄:"+this.age;
	}
}

 public class tsy
{
	public static void main(String[] args) 
	{
		Person per = new Person("同思远",19);
		System.out.println(per);
		System.out.println(per.toString());
	}
}
//输出姓名:同思远、年龄:19
//输出姓名:同思远、年龄:19

  

猜你喜欢

转载自www.cnblogs.com/xiwenxinaini/p/11708280.html