日期:2014-05-20  浏览次数:20916 次

关于Class类的问题
class TestClass
{
  public static void main(String arg[])
  {
  Point pt=new Point();
  Class c=pt.forName("Point");
  System.out.println(c.getName());  
  }
}
class Point
{
  int x,y;
}

问题:Class c=pt.forName("Point")
forName();不是Class类中的静态方法吗?为什么可以用pt来引用forName("Point")呢?





------解决方案--------------------
Class获取有三种:
1.静态Class.forName("package.class");//package.class:包名+类名
2.直接用类名调用:类名.class
3.对象引用:引用.getClass();
 
------解决方案--------------------
Java code


Class c = null;
        try {
            c = Class.forName("Point");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

------解决方案--------------------
不可能的。forName 这个方法是Class的静态方法,Object中根本就没有该方法,除非你对你的Object 类进行了修改 要不然不可能能方法该方法。