老师,为什么三种方法都报错

来源:3-1 Class类的概述和使用

彤宝贝

2019-10-12 17:20:15

package com.ht.test;
import org.junit.Test;

/**
 * 获得Class对象
 * 1.通过类名.Class
 * 2.对象.getClass()
 * 3.Class.forName();
 * @author 24516
 *
 */
public class Class{
	@Test
	public void ClassTest() {
		//通过类名.class的方式创建对象
		GenericDeclaration a =  Persion.class;
		//通过对象.getClass()
		Persion persion = new Persion();
		Class c = persion.getClass();
		//Class.forName
		Class.forName("com.ht.test.Persion");
	}
	
}

http://img.mukewang.com/climg/images/unknow-80.png

http://img.mukewang.com/climg/5da19a5f0905cd4b12400279.jpghttp://img.mukewang.com/climg/5da19a740921b41109210188.jpg

第一个错误我在导入:import java.lang.reflect.GenericDeclaration;后错误就消失了,

第二个不知道什么问题

第三错误为什么没有显示和老师一样的异常错误?

写回答

2回答

好帮手慕柯南

2019-10-12

同学你好,

  1. 第一个错是因为GenericDeclaration并不是java.lang中的类,所以需要导包,因此导入包就可以了

  2. 第二和第三个问题,是因为同学的类名也是Class导致的,同学更改一下类名测试一下。

    http://img.mukewang.com/climg/5da1a7a60938acd503340064.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0

彤宝贝

提问者

2019-10-12

http://img.mukewang.com/climg/5da19b35098221ca09760390.jpg

http://img.mukewang.com/climg/5da19b4d095f857010700206.jpg

图一是第一个错(第一张图上传失败了)

图二是第三个错(提问的时候没有Class对象)

0

0 学习 · 8016 问题

查看课程