在IntelliJ中自定义`Code`>`Generate`>`Constructor`

罗勒·布尔克

我想自定义的通过的IntelliJ 2017.2产生的参数的命名进行选择时Code> Generate>Constructor到:

  • 标记它们final
  • 附加Arg到每个变量名称的末尾。
    例如,firstNameArglastNameArg而不是firstNamelastName
  • 用注释每个参数@NotNull

有一些方法可以自定义构造函数代码的生成吗?

此问题(在IntelliJ IDEA中自定义代码生成)类似,但(a)未引用构造函数,并且(b)可能已过时。

涂鸦

我不认为IntelliJ提供此OOTB。您也许可以通过使用实时模板Preferences > Editor > Live Templates

模板文字:

private final $parameterType$ $parameterName$;

public $constructorClass$(final $parameterType$ $parameterName$$parameterNameSuffix$){
    this.$parameterName$ = $parameterName$$parameterNameSuffix$;
}

将活动模板的“适用性”更改为:

  • Java > Declaration
  • Java > Smart type completion

单击Edit variables并设置Expression与每个变量相关联,如下所示:

  • parameterType:completeSmart()
  • parameterName:suggestVariableName()
  • constructorClass:className()
  • parameterNameSuffix:camelCase(String)

以下是一些屏幕快照,显示了它的运行情况:

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

但是,这种方法有一些警告(对于您的用例,其中一些可能会破坏交易):

  • 它不能应用于现有的类,即它不能查询类,查找其成员并从这些成员生成构造函数。相反,它是触发类成员声明的一种方法,并且在您声明类成员时即时创建一个构造函数。
  • 如果希望它支持多个类成员/构造函数参数,则可能必须为单个arg构造函数创建一个活动模板,然后将其复制为两个arg构造函数,然后再复制为三个arg构造函数等。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 Keras 中为 fit_generate() 创建自定义 data_generator

intellij中的自定义评论标记

如何在不使用generate函数的情况下编写自定义工厂属性

在IntelliJ中添加自己的自定义宏,例如“ sout”

如何在IntelliJ IDEA中自定义SonarLint规则?

IntelliJ IDEA中的自定义Maven目标

Intellij 12.1中的自定义设置器

在IntelliJ idea(typeScript)中折叠自定义区域

IntelliJ中的自定义关键字建议

在 IntelliJ IDEA 中创建自定义别名

Maven“ archetype:generate”找不到我的自定义原型,但是可以在交互模式下进行

在VS Code中创建自定义HTML代码段

如何在VS Code中自定义多个片段?

自定义Visual Studio Code中的语法突出显示

VS Code:自定义代码段中的变量

IntelliJ中代码的自定义格式

基于XML的自定义Intellij语言

IntelliJ PMDPlugin自定义规则集

ttl 中的一对多关系定义和 SPARQL-Generate 嵌套 GENERATE

Kotlin中的constructor()是主要构造函数吗?

将参数传递给VBA中的Constructor

如何使GNU __attribute __((constructor))在库中工作?

未定义命令“ doctrine:generate:entities”

React 中自定义字段的自定义验证

角度:自定义组件中的自定义组件

Azure DevOps:“rzc generate exited with code 2”

如何在Intellij IDEA中为Apache Tomcat指定自定义JRE路径?

使用IntelliJ在Spring Boot中自定义应用程序属性

在Intellij“从原型创建项目”向导中显示自定义原型属性