JAVA基础——Object类和Class类

什么是Object类

Object类是所有类根类,其中也有很多方法。

Object类中的方法:

equals方法:

对象1.equals(对象2) ————比较的是两个对象的内存地址是否相同,返回boolean

发现其实equals方法有时候并不是我们想要的,我们想要的可能是比较两个不同对象之间的数据是否相同。
因此我们可以对equals在子类中进行重载,如下

class Num
{
	int num;
	Num(int num)
	{
		this.num=num;
	}
	public boolean equals(Object obj) //这里是个多态特性,向上转型
	{
		if(obj instanceof Num)
		{
			Num x=(Num)obj;			//要和Num类内数据比较要强转成Num类,向下转型
			return this.num==x.num;
		}
		else 
			return false;
	}
}
class  ObjectDemo
{
	public static void main(String[] args) 
	{
		Num n1=new Num(4);
		Num n2=new Num(6);
		System.out.println(n1.equals(n2));
	
	}
}

toString方法:

对象.toString()————返回对象的所属类@地址哈希值

同样如果想让toString方法是我们想要的一些方法,也可以进行重载

以上仅仅是Object类中的一些方法而已。更多的参阅API


getClass方法:

对象.getClass()————返回是Class类型的对象。表示这个对象的所属类,如n1的所属类是Num;

这里的Class类是一种新的类,具体见下文。

Class类:

在Java中,当我们编写一个类,编译完成后,会生成.class文件,而这些class文件也同样有共性(如他们都有名称,都有方法等等),我们把它抽取出来定义一个叫Class类。

其中Class类中有一个方法叫做getName().顾名思义返回对象的名称,具体用法见下:

首先为了调用这个Class类中的方法,必然要建立Class类的对象,通过Object的getClass方法可以与我们自己建立的类联系起来:

	   	Num n1=new Num(4);
		Class c=n1.getClass();
		System.out.println(c.getName());	//返回的是Num





JAVA基础——Object类和Class类

上一篇:安卓模拟器抓包


下一篇:Visual Studio跨平台开发实战(5) - Xamarin Android多页面应用程式开发