`

java.lang.Class.getDeclaredConstructor()方法实例

 
阅读更多

java.lang.Class.getDeclaredConstructor() 方法返回一个Constructor对象,它反映此Class对象所表示的类或接口指定的构造函数。parameterTypesparameter是确定构造函数的形参类型,在Class对象声明顺序的数组。

声明

以下是java.lang.Class.getDeclaredConstructor()方法的声明

publicConstructor<T> getDeclaredConstructor(Class<?>... parameterTypes)throwsNoSuchMethodException,SecurityException

参数

  • parameterTypes -- 这是参数数组。

返回值

此方法返回具有指定参数列表构造函数的构造函数对象。

异常

  • NoSuchMethodException -- 如果没有找到匹配的方法。

  • SecurityException --如果安全管理存在。

例子

下面的例子显示java.lang.Class.getDeclaredConstructor()方法的使用。

import java.lang.reflect.*;

public class ClassDemo {

   public static void main(String[] args) {
    
     try {
        ClassDemo cls = new ClassDemo();
        Class c = cls.getClass();

        // constructor with arguments as Double and Long
        Class[] cArg = new Class[2];
        cArg[0] = Double.class;
        cArg[1] = Long.class;
        Constructor ct = c.getDeclaredConstructor(cArg);
        System.out.println("Constructor = " + ct.toString());
     }
    
     catch(NoSuchMethodException e) {
        System.out.println(e.toString());
     }
        
     catch(SecurityException e) {
        System.out.println(e.toString());
     }
   }

   private ClassDemo() {
      System.out.println("no argument constructor");
   }

   public ClassDemo(Double d, Long l) {
      this.d = d;
      this.l = l;
   }

   Double d = new Double(3.9d);
   Long l = new Long(7687);
} 

 让我们来编译和运行上面的程序,这将产生以下结果:

no argument constructor
Constructor=publicClassDemo(java.lang.Double,java.lang.Long)

 

分享到:
评论

相关推荐

    S2SH整合报错

    配置了日志之后打印出下列信息: ERROR main org.springframework.web.context.ContextLoader - Context initialization failed ... at java.lang.Class.getDeclaredConstructor(Class.java:1953) ……

    java 反射简单用例

    constructor = clazz.getDeclaredConstructor(new Class[]{int.class,String.class,String.class}); // Object instance = constructor.newInstance(new Object[]{1, "李四", "中国"}); // System.out.println...

    java反射配置文件实现

    Constructor con=c.getDeclaredConstructor(String.class,int.class); // 反映此 Class 对象所表示的类或接口的指定构造方法。 /* 跟 Student类中的两个参数的构造方法对应 * public Student(String name, int ...

    后端开发是一个涉及广泛技术和工具的领域.docx

    后端开发是一个涉及广泛技术和工具的领域,这些资源对于构建健壮、可扩展和高效的Web应用程序至关重要。以下是对后端开发资源的简要介绍: 首先,掌握一门或多门编程语言是后端开发的基础。Java、Python和Node.js是其中最受欢迎的几种。Java以其跨平台性和丰富的库而著名,Python则因其简洁的语法和广泛的应用领域而备受欢迎。Node.js则通过其基于JavaScript的单线程异步I/O模型,为Web开发提供了高性能的解决方案。 其次,数据库技术是后端开发中不可或缺的一部分。关系型数据库(如MySQL、PostgreSQL)和非关系型数据库(如MongoDB、Redis)各有其特点和应用场景。关系型数据库适合存储结构化数据,而非关系型数据库则更适合处理大量非结构化数据。 此外,Web开发框架也是后端开发的重要资源。例如,Express是一个基于Node.js的Web应用开发框架,它提供了丰富的API和中间件支持,使得开发人员能够快速地构建Web应用程序。Django则是一个用Python编写的Web应用框架,它采用了MVC的软件设计模式,使得代码结构更加清晰和易于维护。

    华为数字化转型实践28个精华问答glkm.pptx

    华为数字化转型实践28个精华问答glkm.pptx

    新员工入职培训全流程资料包gl.zip

    新员工入职培训全流程资料包(100+个文件) 1入职流程指引 万科新职员入职通知书 万科新职员入职引导手册 新进员工跟进管理表 新员工入职报到工作单(文职) 新员工入职报到流程 新员工入职流程表 新员工入职手续办理流程(工厂 新员工入职手续清单 新员工入职须知 新员工入职训流程 新员工入职引导表(导师用) 2 入职工具表格 3 培训方案计划 4培训管理流程 5培训教材课件 6 培训效果检测 7 员工管理制度 8 劳动合同协议 9 新员工培训PPT模板(28套)

    三菱PLC通讯程序实例

    FX5U PLC作为主、从站的通讯方式程序实例,以及包含详细说明文件...

    技术需求报告-集行波测距与故障录波功能于一体的电网综合故障分析系统.docx

    技术需求报告-集行波测距与故障录波功能于一体的电网综合故障分析系统.docx

    最新二开版本源码博客论坛源码,UI很漂亮,可切换皮肤界面.rar

    最新二开版本源码博客论坛源码,UI很漂亮,可切换皮肤界面.rar最新二开版本源码博客论坛源码,UI很漂亮,可切换皮肤界面.rar

    2024-2030全球及中国广谱防晒霜行业研究及十五五规划分析报告.docx

    2024-2030全球及中国广谱防晒霜行业研究及十五五规划分析报告

    基于Qt Creator实现中国象棋人机对战, c++实现.zip

    基于Qt Creator实现中国象棋人机对战, c++实现.zip

    华为用“三阶段十二步”法保证业务战略引领数字化转型glkx.pptx

    华为用“三阶段十二步”法保证业务战略引领数字化转型glkx.pptx

    基于matlab实现自适应稳健波束形成对角加载算法,其与输入信噪比的关系.rar

    基于matlab实现自适应稳健波束形成对角加载算法,其与输入信噪比的关系.rar

    热塑性弹性体,全球前21强生产商排名及市场份额.docx

    热塑性弹性体,全球前21强生产商排名及市场份额

    基于python+django网易新闻+评论的舆情热点分析平台(源码+论文+演示视频)

    详见:https://blog.csdn.net/Timi2019/article/details/138357258 【项目技术】 python+Django+mysql 【实现功能】 网站前台: (1)用户可以在不登录的情况下访问本系统,但是不能进行数据的分析,也不能对自己的个人信息进行修改。 (2)用户的注册与登录:游客想要在一个网站对自己的信息进行修改的话,需要经过一系列的有验证信息的注册,成为网站的正式用户后,可以编辑或修改自己的个人信息。 (3)评论分析:用户可以在网站内对所有的评论进行查看和分析。 (4)个人信息:通过个人信息查看功能可以查看自己的个人信息,还可以对密码进行修改。 (5)系统简介:用户可以在网站的首页上查看系统的信息,如用户数量、新闻数量、评价数量等信息。 网站后台: (6)用户信息管理:管理员可以查看和维护网站内所有的用户信息,可以通过用户的编号或者用户名进行查找,查找到具体的用户后可以对用户的信息进行修改,也可以直接删除用户的信息。 (7)新闻管理模块:后台管理员可以对网站内的新闻信息进行管理

    某知名大型集团信息化项目建设方案qy.pptx

    某知名大型集团信息化项目建设方案qy.pptx

    基于matlab实现潮流计算程序,MATLAB潮流计算程序.rar

    基于matlab实现潮流计算程序,MATLAB潮流计算程序.rar

    Python开发数据分析和机器学习平台源码

    搭建数据分析和机器学习平台,实现如下功能:设计一个网页版的用户界面,支持从本地选取数据集、自动可视化分析、查看训练记录、查看训练模型参数和绘图和支持完成机器学习任务。核心工具:streamlit和pycaret,部署和运行方便,只需streamlit run main.py命令即可。

    一种统一的单隐层的前馈网络(SLFNs)的在线序列学习算法-前馈网络、ELM、OS-ELM

    一种统一的单隐层的前馈网络(SLFNs)的在线序列学习算法。该算法被称为在线序极端学习机器(OS-ELM),可以学习固定或不同块大小的逐块或逐块数据)。OS-ELM中加性节点的激活函数可以是任意有界的不变分段连续函数,RBF节点的激活函数可以是任意可积的分段连续函数。在OS-ELM中,随机选择隐藏节点的参数(加性节点的输入权值和偏差或RBF节点的中心和影响因子),并根据顺序到达的数据解析确定输出权值。该算法采用了Huang等人开发的批处理学习的思想,该思想已被证明比其他批处理训练方法非常快。除了选择隐藏节点的数量外,还不需要手动选择其他控制参数。

    仿我图网素材购买素材下载素材交易平台网站源码.rar

    仿我图网素材购买素材下载素材交易平台网站源码.rar仿我图网素材购买素材下载素材交易平台网站源码.rar

Global site tag (gtag.js) - Google Analytics