A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 禾呈 中级黑马   /  2013-7-2 08:46  /  1942 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 禾呈 于 2013-7-3 08:26 编辑

这两天书上看到java.lang中有一个Void的包装器类,可是就是没看懂这个类的作用 求指教啊?

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

6 个回复

倒序浏览
Void类的源码
public final
class Void {

    /**
     * The Class object representing the primitive Java type void.
     */
    public static final Class TYPE = Class.getPrimitiveClass("void");

    /*
     * The Void class cannot be instantiated.
     */
    private Void() {}
}
网上找的说明,应该是确定返回值类型的,void也算一种类型
java.lang.Class类有方法
Class.getMethod(String name, Class[] params),返回java.lang.reflect.Method类。
Method.getReturnType() 函数得到一个关于返回值的类型。
如Method.getReturnType().getClassName.eqauls( Void.Type.getClassName() ),  表示是该方法返回void
同理Method.getReturnType().getClassName.eqauls( Integer.Type.getClassName()) ,表示是该方法返回 int
同理Method.getReturnType().getClassName.eqauls( Integer.getClass().getClassName()) ,表示是该方法返回 java.lang.Integer类型

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

回复 使用道具 举报
本帖最后由 禾呈 于 2013-7-2 09:53 编辑
薛淑凯 发表于 2013-7-2 09:18
Void类的源码
public final
class Void {


void的作用是什么?
class VoidTest{
    public static void main(String args[]){
         void v=VoidTest.test();//这句话为何错误
    }
    public static void  test()
   {
       syso("fdsfs");
   }
}
回复 使用道具 举报
禾呈 发表于 2013-7-2 09:51
void的作用是什么?
class VoidTest{
    public static void main(String args[]){

如果硬要这么写的话
        public Void test(){
                return null;}
        public static void main(String[] args){
                Void v=new VoidTest().test();
                System.out.println(v.TYPE);
        }
void只是个用来说明没有返回值的关键字,无需深究它,这些东西应该是底层的了,以后水平高了再去研究吧
回复 使用道具 举报

楼主你好  如果帖子的问题已经解决,请把帖子的类型改为“已解决”。
回复 使用道具 举报
不错   学习了   
回复 使用道具 举报

楼主你好  如果帖子的问题已经解决,请把帖子的类型改为“已解决”。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马