Java-Class类型

初看下面的代码片段:

class GetDispatcher {
    Object instance; // Controller实例
    Method method; // Controller方法
    String[] parameterNames; // 方法参数名称
    Class<?>[] parameterClasses; // 方法参数类型
}

对于Class<?>[] parameterClasses; // 方法参数类型,这一行的Class<?>没明白什么意思,网上看到一篇文章《搞懂Java的Class类 》,介绍的比较详细。

用个通俗的话讲,市面上有很多手机厂商,每个手机的说明书上肯定有内存、屏幕大小、CPU等信息,这些都是我们购买时关注的,我们就把这个关注的内容提炼一下叫做,Phone类,等价于Class类,使用时可以通过 苹果手机.phone.方法()获取信息。
光有一个内存、屏幕大小、CPU等信息,没有实际意义,所以无法直接new一个Phone出来。

回到上面说的Class<?>[] parameterClasses,上面提到的那篇文章里,说了Field,Method,那这个参数类型为啥是Class呢? 因为参数类型肯定是String、Boolean等,肯定是一个Class,由于不确定具体是哪种,用了一个泛型。 多说一句,Class 是声明泛型时用的,class<?> 是定义用的,不一样。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值