1一乐
2022/02/23阅读:64主题:默认主题
为何代码没错,却出不来结果,你可能...
欢迎大家来一乐乐的博客园
1、想看看我正确又简洁干净的代码:


-
嗯,我也觉得没有毛病,但是一运行:
java.lang.NoSuchMethodException: com.shan.hello.Hello.

不应该结果出不来呀,奔溃,想到可能是编译器自身有毛病,我重启了,发现还是没出结果;我又尝试了刷新,还是没出结果;我还试过关闭后再次打开项目,再次让人悲伤,只能拿出杀手锏---调试,也不行,直接报错,而且报错信息提示时构造器问题。。。

----找到啦---导包出错啦,代码没错,但是导包错啦
✿ 2、总结:为何代码没错,却出不来结果,你可能...
------少年呀,你忽视了包呀,导错包了呀少年
✿ 3、关于反射:
(1)获取构造器是要与访问权限无关,记得加关键词Declared
-
获取所有构造器: □ getConstructors() 【所有,public修饰的】
□ getDeclaredConstructors()【所有,和访问权限无关】 -
获取指定的一个构造器: □ 公共无参构造器 getConstructor()
□ 公共有参构造器 getConstructor(Class<?>...parameterTypes) 参数parameterTypes表示构造器参数的Class类型
□ 任何类型的有参构造器 getDeclaredConstructor(Class<?>...parameterTypes) 【和访问权限无关
】
(2)对于私有的构造器,要反射获取对象,记得:
设置当前构造器为可以访问 Constructor对象.setAccessible(true)
作者介绍