第41题JAVA高级技术-反射实战1(动态实例化类)

Posted 小虚竹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第41题JAVA高级技术-反射实战1(动态实例化类)相关的知识,希望对你有一定的参考价值。

文章目录

零、前言

​ 今天是学习 JAVA语言 打卡的第41天,每天我会提供一篇文章供群成员阅读( 不需要订阅付钱 ),读完文章之后,按解题思路,自己再实现一遍。在小虚竹JAVA社区 中对应的 【打卡贴】打卡,今天的任务就算完成了。

​ 因为大家都在一起学习同一篇文章,所以有什么问题都可以在群里问,群里的小伙伴可以迅速地帮到你,一个人可以走得很快,一群人可以走得很远,有一起学习交流的战友,是多么幸运的事情。

​ 学完后,自己写篇学习报告的博客,可以发布到小虚竹JAVA社区 ,供学弟学妹们参考。

​ 我的学习策略很简单,题海策略+ 费曼学习法。如果能把这100题都认认真真自己实现一遍,那意味着 JAVA语言 已经筑基成功了。后面的进阶学习,可以继续跟着我,一起走向架构师之路。

一、题目描述

题目:JAVA一般是使用构造方法来创建对象,构造方法又分有参构造和无参构造。如果类里面没有定义构造方法,编译器会添加一个无参构造方法。

除了用构造方法,还可以用反射创建对象。

二、解题思路

定义一个类,名为NewClassTest

在main方法中,创建一个File对象,对使用这个File对象在D盘创建一个文本文件。

使用Constructor类及其相关方法实现。

Constructor类提供类的单个构造方法的信息以及对它的访问权限。

三、代码详解

public class NewClassTest 
    public static void main(String[] args) 
        try //获得File类的Constructor对象
            Constructor<File> constructor =
                    File.class.getDeclaredConstructor(String.class);
            System.out.println("使用反射创建File对象");
            File file = constructor.newInstance("d://小虚竹.txt");
            System.out.println("使用File对象在D盘创建文件:小虚竹.txt");
            file.createNewFile();//创建新的文件
            System.out.println("文件是否创建成功:" + file.exists());
         catch (Exception e) 
            e.printStackTrace();
        
    

四、推荐专栏

《JAVA从零到壹》

《JAVA从零到壹》第四讲:类与对象基础

第六讲:数组包及访问控制

《JAVA从零到壹》第七讲:面向对象高级特性

五、示例源码下载

关注下面的公众号,回复筑基+题目号

筑基41

以上是关于第41题JAVA高级技术-反射实战1(动态实例化类)的主要内容,如果未能解决你的问题,请参考以下文章

第43题JAVA高级技术-反射实战3(动态设置类的私有属性)

C#反射实例化类并调用类的方法

寻找在动态加载 Jar 文件和在 Java 运行时实例化类时使用 Apache Felix 的基本示例

Redis高级项目实战,java运算符和表达式程序题

Java反射机制(Class类的使用)

杂谈 论实例化类的第六种方式