您的位置:首页 > 编程语言 > Java开发

每天JAVA多一点(3)

2008-07-07 14:53 204 查看
1,类的修饰符:public(同一个包内使用) abstract(无实例) final(不能做父类)

2,Object类有equals方法,clone方法和toString方法。字符串+该对象时,自动调用toString方法。clone方法分配新的内存空间并在空间内bit-by-bit复制对象。

3,Java维护了一个“运行时类型标识”(run time type identification)它跟踪每个对象所属的类,这就保证了在运行时准确选中当前方法。保存相关标识信息的类叫做Class类。Object类的getClass方法可以返回一个Class类的实例。getClass()返回类类型的toString(),getName()返回类型名称。.class只能被类当作静态变量使用,不能作为实例变量。

以下转载:

获取Class实例的三种方式:

1)利用对象调用getClass()方法获取该对象的Class实例。

2)使用Class类的静态方法forName(),用类的名字获取一个Class实例。

3)运用.class的方式来获取Class实例,对于基本数据类型的封装类,还可以采用.TYPE来获取相对应的基本数据类型的Class实例。关键字instanceof返回一个布尔值,判断是不是某个特定类型的实例。

Class.newInstance()使用所选的Class对象生成该类的新实例。它调用了缺省(无参数)的类构造器生成新的对象。所以使用newInstance()创建的类必须有一个缺省构造器。

如果有一个Class对象,那么就可以通过getSuperclass()获取它的直接基类。这个方法自然也是返回一个Class引用,所以可以进一步查询其基类。这意味着在运行时,可以找到一个对象完整的类层次结构。

例子:

class heihei{

}

class haha{

public static void main(String args[]) {

heihei hoho = new heihei();

// System.out.println(hoho.class);

System.out.println(hoho.getClass());

System.out.println(hoho.getClass().getName());

// System.out.println(hoho.class.getName());

System.out.println(heihei.class.getName());

System.out.println(heihei.class); }}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: