#### 5.1 定义接口 Shape

#### 5.2 定义 Point 类实现 Shape 接口

#### 5.3 定义 Circle 类扩展 Point 类

#### 5.3 定义 RTTI 类

n 声明 RTTI 类。

n 为类添加Main()方法

n 在Main()方法中创建类Circle的实例c

利用操作符instanceof判断实例c在运行期间的类型信息

//RTTI.java

//用来说明如何确定多态对象运行期间的类型信息

interface Shape

{

}

class Point implements Shape

{

}

class Circle extends Point

{

}

class RTTI

{

public static void main (String [] args)

{

Circle c = new Circle ();

System.out.println (c instanceof Circle);

System.out.println (c instanceof Point);

System.out.println (c instanceof Shape);

}

}

实训代码 2：ClassInfoDemo1.java

//演示如何获取类的名称信息

c lass ClassInfoDemo1

{

public static void main (String [] args)

{

String s = "";

Class c = s.getClass ();

System.out.println (c.getName ());

c = new ClassInfoDemo1 ().getClass ();

System.out.println (c.getName ());

}

}

实训代码 3：ClassInfoDemo2.java

//演示通过 Class 对象获取类的名称信息的局限性

class ClassInfoDemo2

{

public static void main (String [] args)

{

Class c = String.class;

System.out.println (c.getName ());

c = ClassInfoDemo2.class;

System.out.println (c.getName ());

c = double.class;

System.out.println (c.getName ());

// 下面的代码被注释掉，因为会出现编译错误

// c = char.getClass ();

// System.out.println (c.getName ());

c = float [].class;

System.out.println (c.getName ());

}

}