网站实名制认证备案,免费网站推广渠道,网站ftp,骏域网站建设专家电脑版介绍
总体说明
checkstyle可以使用FinalClass检查应该被定为final的类。如果违反了#xff0c;就会报违反项#xff1a; https://checkstyle.sourceforge.io/checks/design/finalclass.html
checkstyle规则集文件对FinalClass模块的配置#xff1a;
哪些类可以被定义fi…介绍
总体说明
checkstyle可以使用FinalClass检查应该被定为final的类。如果违反了就会报违反项 https://checkstyle.sourceforge.io/checks/design/finalclass.html
checkstyle规则集文件对FinalClass模块的配置
哪些类可以被定义final的
原则是不允许被继承的类用final修饰。
在具体判定方法上checkstyle认为如下类要用final修饰
一个类只包含private的构造函数。
下面的类会被checkstyle跳过
是匿名内部类的父类。
示例
只有匿名构造函数的类被定义为final的—checkstyle检查通过 只有匿名构造函数的类没有被final修饰—checkstyle检查报违反项 一个类有一个private构造函数和一个public构造函数不被定义为final的—checkstyle检查通过
下面的类Parent有一个private构造函数和一个public构造函数所以不需要定义为final的
package com.thb;public class Parent {/*** 整型字段.*/private int field1;/*** 字符串字段.*/private String filed2;/*** 构造函数.* param value*/public Parent(final String value) {this.filed2 value;this.field1 0;}/*** 私有构造函数.* param value*/private Parent(int value) {this.field1 value;this.filed2 hello;}
}是匿名内部类的父类不被定义为final的—checkstyle检查通过 外部类只有private构造函数含有匿名内部类但不是该匿名内部类的父类外部类定义为final的—checkstyle检查通过
下面的父类只含有private的构造函数含有一个匿名内部类但不是该匿名内部类的父类所以父类要被定义为final的
外部类只有private构造函数含有匿名内部类但不是该匿名内部类的父类外部类没有定义为final的—checkstyle检查报违反项
下面的父类只含有private的构造函数含有一个匿名内部类但不是该匿名内部类的父类父类没有定义为final的checkstyle检查报违反项 接口中的嵌套类只有private构造函数该嵌套类没有定义为final的—checkstyle检查报违反项 接口中的嵌套类只有private构造函数该嵌套类定义为final的—checkstyle检查通过 注解中的嵌套类只有private构造函数该嵌套类没有定义为final的—checkstyle检查报违反项 注解中的嵌套类只有private构造函数该嵌套类定义为final的—checkstyle检查通过