代码如下:
public class TestClass {
public static void main(String[] args)
{
try {
//测试Class.forName()
Class testTypeForName=Class.forName("TestClassType");
System.out.println("testForName---"+testTypeForName);
//测试类名.class
Class testTypeClass=TestClassType.class;
System.out.println("testTypeClass---"+testTypeClass);
//测试Object.getClass()
TestClassType testGetClass= new TestClassType();
System.out.println("testGetClass---"+testGetClass.getClass());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class TestClassType{
//构造函数
public TestClassType(){
System.out.println("----构造函数---");
}
//静态的参数初始化
static{
System.out.println("---静态的参数初始化---");
}
//非静态的参数初始化
{
System.out.println("----非静态的参数初始化---");
}
}
控制台报的错误:
各位大侠,这是什么原因呢?
class
#6楼回答是正确的,楼主仔细看看。Class testTypeForName=Class.forName("TestClassType"); 你的这句话出了问题
应该是包名.TestClassType 假如你的包名是test的话,就写上"test.TestClassType"包名是什么啊?
代码里的第一句,看看是什么?是:package com.jerehsoft.shortcode.TestClassInstance; 吗?