getField和getDeclaredField的区别

article/2025/10/4 5:30:50

这两个方法都是用于获取字段


1.getField 只能获取public的,包括从父类继承来的字段。
2.getDeclaredField 可以获取本类所有的字段,包括private的,但是不能获取继承来的字段。 (注: 这里只能获取到private的字段,但并不能访问该private字段的值,除非加上setAccessible(true))

 

public class DemoTest {@Testpublic void  testField2() throws Exception {UserController userController = new UserController();Class<? extends UserController> clazz = userController.getClass();/* Field[] declaredFields = clazz.getDeclaredFields();Arrays.asList(declaredFields).stream().forEach(System.out :: println);*/UserService userService = new UserService();Field userServiceField = clazz.getDeclaredField("userService");userServiceField.setAccessible(true);//userServiceField.set(userController,userService);String name = userServiceField.getName();name = name.substring(0,1).toUpperCase()+name.substring(1,name.length());String setMethodName = "set" + name;Method method = clazz.getMethod(setMethodName, UserService.class);method.invoke(userController,userService);System.out.println(userController.getUserService());}
}
public class UserController {private UserService userService;public UserService getUserService() {return userService;}public void setUserService(UserService userService) {this.userService = userService;}
}
public class UserService {
}


http://chatgpt.dhexx.cn/article/NWCsZkUD.shtml

相关文章

vscode插件开发总结

一、关于vscode插件 相信大家对vscode应该都不陌生&#xff0c;VSCode是微软出的一款轻量级代码编辑器&#xff0c;免费而且功能强大&#xff0c;以功能强大、提示友好、不错的性能和颜值俘获了大量开发者的青睐&#xff0c;对JavaScript和NodeJS的支持非常好&#xff0c;自带…

2021-前端-VsCode插件

此乃吾习前端&#xff0c;VsCode之插件&#xff0c;个人所装&#xff0c;喜着自拿&#xff0c;不足之处还望海涵&#xff0c;多加批评。 1.Auto Close Tag——自动闭合尾部的标签 2.Atuo Rename Tag——修改 html 标签 自动帮你完成头部和尾部闭合标签的同步修改 3.Bracket…

关于VSCode插件的安装位置

VSCode的插件地址修改_上善若泪-CSDN博客_vscode插件位置文章目录1 data文件夹2 使用--extensions-dir命令3 使用mklink命令vscode编辑器强大的地方是可以使用各种各样的插件&#xff0c;但是插件默认的地方是在:C盘&#xff0c;让一些强迫症可能会受不了&#xff0c;非要迁移到…

vscode 插件-常用插件

VSCode常用插件(安装步骤同汉化) 1、*Auto Close Tag (自动闭合HTML/XML标签) 2、*Auto Rename Tag (自动帮你完成尾部闭合标签的同步修改&#xff0c;不过有些bug) 3、*Prettier(Prettier 是目前 Web 开发中最受欢迎的代码格式化程序) 安装Prettier -Code formatter这个插件…

Vscode 插件包下载并离线安装

打开VSCode插件官网 官网链接是https://marketplace.visualstudio.com/vscode 搜索Go 在输入框中输入go&#xff0c;搜索&#xff0c;结果如下&#xff1a; 点击Download Extension下载 注意&#xff1a;有时候找不到Download Extension&#xff0c;可能是网速加载慢&…

VsCode插件安装及推荐

1、快捷键Ctrl P&#xff0c;打开插件&#xff0c;输入 ext install &#xff08;我习惯的输入方式&#xff09;&#xff1b; 2、或者点击图片中的圈红的按钮&#xff0c;也可以进入插件安装商城&#xff1b; 3、下面开始说下我目前安装的插件&#xff08;我目前是vue开发&…

VScode安装离线插件

1. 下载及安装 首先在VScode官方插件库下载自己所需要的插件&#xff1a;https://marketplace.visualstudio.com/vscode 下载成功之后是以**.vsix**结尾的文件 然后再VScode软件中进行导入刚下载的文件 如果提示蓝色信息则为安装成功&#xff0c;红色则为失败 2. 版本不兼容报…

VSCode前端必备插件

跨平台的文本编辑器。由于其卓越的性能和丰富的功能&#xff0c;它很快就受到了大家的喜爱。 就像大多数 IDE 一样&#xff0c;VSCode 也有一个扩展和主题市场&#xff0c;包含了数以千计质量不同的插件。为了帮助大家挑选出值得下载的插件&#xff0c;我们针对性的收集了一些…

如何写一个vscode插件

1.运行yo code创建项目 2.选择使用yarn或者npm 3.运行 官网这个例子需要我们 ctrl shirt p 调出输入框, 然后在里面输入hello w 就可以如图所示 activationEvents: 当什么情况下, 去激活这个插件 activationEvents.onCommand: 在某个命令下激活(之后会专门列出很多其他条件…

Python好用的VSCode插件

1. Better Comments 这是一个让你能更好地编写注释的工具&#xff0c;它能根据关键词用不同的颜色高亮代码片段。支持以下类型的高亮&#xff1a; 感叹号 “!” 代码警告。问号“?”代表存留疑问。TODO 代码未来将要进行的操作。param 参数 2. autoDocstring 能够自动生成函…

VScode插件(自用)

一、Material Icon Theme 图标插件 它采用了 Google Material Design 风格&#xff0c;文件图标以及文件夹图标覆盖非常的全面。 二、 颜色主题插件Themes&#xff08;代码颜色&#xff09;中的 Monokai Dimmed 三、css peek 使用此插件&#xff0c;你可以追踪至样式表中 CSS…

2022年好用的Vscode插件

Chinese(VSCode汉化插件) 第一款推荐的插件叫Chinese 是一款VSCode汉化插件 这样&#xff0c;VSCode就完成了汉化 Material Theme(主题插件) 第二款插件是一个好看的主题插件Material Theme 它包含了多套不同色彩风格的主题&#xff0c;以及好看的图标样式。 选择不同主题可以…

VSCode 插件

文章目录 VSCode 插件 VSCode 插件 图标插件作用Auto Import在j\ts文件中&#xff0c;直接使用外部依赖包的变量名&#xff0c;此时&#xff0c;会自动写入导入语句Bracket Pair Colorizer2VS Code 已经内置Chinese (Simplified) (简体中文)汉化Code Spell Checker适用于代码和…

vscode常用插件总结

1、Code Spell Checker 检查单词拼写 2、Auto Rename Tag html/xml标签改变&#xff0c;将会成对改变&#xff5e; 3、Color Highlight 颜色标记 4、vscode-icon 文件图标 5、Turbo Console Log 或者 javascript console utils 按ctrlAltL可以快速输出console.log 6、v…

vscode插件(个人正在用的)

插件目录 any-ruleAuto Close TagAuto Rename Tagbackground-coverChinese (Simplified) (简体中文) Language Pack for Visual Studio CodeDebugger for JavaError LensESLintExtension Pack for JavaImage previewIntelliCodeIntelliCode API Usage ExamplesLanguage Support…

Vue3 (Vscode插件)

前端开发的编辑器有很多种如DW,hubilder&#xff0c;Web Storm,sublime,vscode&#xff0c;等等。 Vue3 vite Ts pinia 实战 源码 全栈_哔哩哔哩_bilibili 视频教程 随着VsCode开源免费&#xff0c;丰富的插件&#xff0c;也是深受前端开发人员爱戴&#xff0c;在我们使…

vscode插件开发

目录 插件在 VSCode 中能做什么 1、发布应用市场 1、申请Microsoft账号 2、创建Azure DevOps组织 3、创建令牌 4、创建发布账号 5、发布应用市场 2、本地打包不发布 1、本地打包 2、导入应用商店 ​编辑 3、插件开发前的环境准备 2、项目初始化 3、运行项目 4、文件…

VSCode插件推荐

1. VSCode汉化包插件 &#xff1a;Chinese (Simplified) (简体中文) Language VSCode汉化包&#xff0c;原始默认是英文的所以我们需要下一个中文插件。 2. VSCode自动补全标签 &#xff1a;Auto Close Tag Auto Close Tag 对Html或Xml文件自动创建结束标签&#xff1b; 如在…

vscode常用插件大全

vscode常用插件大全 参考文章 https://mp.weixin.qq.com/s/1PkWPApvn5uWJl_cdzcoTA 说明 该片文章基本介绍了 vscode 常用插件 , 已经很全面 本文不做任何编辑器的比较&#xff0c;只是我本人日常使用 vscode 进行开发&#xff0c;并且比较喜欢折腾 vscode &#xff0c;会到处…

最新最全 VSCODE 插件推荐(2023版)

目录 一、主题及图标 二、功能强化 三、Git 集成 四、数据库 五、编程美化 六、开发效率 七、前端开发 八、数据分析 九、修仙插件 一、主题及图标 GitHub Theme 黑白两款皮肤 Material Theme 集成了多种主题皮肤&#xff0c;搭配 Material Icon Theme 食用更佳…