falseUnnecessaryReturnBasic RulesIdempotentOperationsDesign RulesBadComparisonDesign RulesEmptyTryBlockBasic RulesSwitchDensityDesign RulesNonCaseLabelInSwitchStatementDesign RulesCloneMethodMustImplementCloneableClone Implementation RulesUnusedModifierControversial RulesCloneThrowsCloneNotSupportedExceptionClone Implementation RulesAvoidDeeplyNestedIfStmtsDesign RulesTooManyFieldsCode Size RulesFinalizeShouldBeProtectedFinalizer RulesUnusedFormalParameterUnused Code RulesConfusingTernaryDesign RulesAbstractClassWithoutAbstractMethodDesign RulesUseAssertSameInsteadOfAssertTrueJUnit RulesUnnecessaryParenthesesControversial RulesStringInstantiationjava.lang.String RulesUnusedLocalVariableUnused Code RulesNoPackageNaming RulesIfStmtsMustUseBracesBraces RulesLocalVariableCouldBeFinalOptimization RulesVariableNamingConventionsNaming RulesUnnecessaryLocalBeforeReturnDesign RulesOnlyOneReturnControversial RulesShortVariableNaming RulesPackageCaseNaming RulesExcessiveMethodLengthCode Size RulesJUnitAssertionsShouldIncludeMessageJUnit RulesAvoidThrowingNullPointerExceptionStrict Exception RulesWhileLoopsMustUseBracesBraces RulesDontImportJavaLangImport Statement RulesDoubleCheckedLockingBasic RulesNullAssignmentControversial RulesReturnFromFinallyBlockBasic RulesStringToStringjava.lang.String RulesUnusedPrivateMethodUnused Code RulesImportFromSamePackageImport Statement RulesDefaultLabelNotLastInSwitchStmtDesign RulesSwitchStmtsShouldHaveDefaultDesign RulesFinalizeDoesNotCallSuperFinalizeFinalizer RulesAvoidCallingFinalizeFinalizer RulesFinalizeOverloadedFinalizer RulesCouplingBetweenObjectsCoupling RulesExcessiveImportsCoupling RulesSuspiciousOctalEscapeControversial RulesCollapsibleIfStatementsBasic RulesMoreThanOneLoggerJava Logging RulesSystemPrintlnJava Logging RulesEmptyFinalizerFinalizer RulesIfElseStmtsMustUseBracesBraces RulesForLoopShouldBeWhileLoopBasic RulesEmptyStaticInitializerBasic RulesJumbledIncrementerBasic RulesLoggerIsNotStaticFinalJava Logging RulesCloseConnectionDesign RulesInstantiationToGetClassDesign RulesCallSuperInConstructorControversial RulesFinalFieldCouldBeStaticDesign RulesUseSingletonDesign RulesAvoidCatchingNPEStrict Exception RulesAvoidPrintStackTraceJava Logging RulesSuspiciousConstantFieldNameNaming RulesExcessiveClassLengthCode Size RulesShortMethodNameNaming RulesUnnecessaryConstructorControversial RulesCompareObjectsWithEqualsDesign RulesAvoidInstantiatingObjectsInLoopsOptimization RulesSimplifyStartsWithOptimization RulesSimplifyBooleanReturnsDesign RulesFinalizeOnlyCallsSuperFinalizeFinalizer RulesMissingSerialVersionUIDJavaBean RulesSimplifyBooleanExpressionsDesign RulesDuplicateImportsImport Statement RulesConstructorCallsOverridableMethodDesign RulesEmptyIfStmtBasic RulesAvoidInstanceofChecksInCatchClauseDesign RulesEmptySynchronizedBlockBasic RulesBeanMembersShouldSerializeJavaBean RulesUseAssertEqualsInsteadOfAssertTrueJUnit RulesEmptyWhileStmtBasic RulesSimplifyConditionalDesign RulesEqualsNullDesign RulesUnnecessaryConversionTemporaryBasic RulesMethodWithSameNameAsEnclosingClassNaming RulesAvoidProtectedFieldInFinalClassDesign RulesJUnitStaticSuiteJUnit RulesExcessiveParameterListCode Size RulesUnusedPrivateFieldUnused Code RulesForLoopsMustUseBracesBraces RulesLongVariableNaming RulesOptimizableToArrayCallDesign RulesEmptyCatchBlockBasic RulesArrayIsStoredDirectlySecurity Code GuidelinesMethodArgumentCouldBeFinalOptimization RulesAvoidDollarSignsNaming RulesLooseCouplingCoupling RulesUnconditionalIfStatementBasic RulesNonStaticInitializerDesign RulesAssignmentToNonFinalStaticDesign RulesEmptyStatementNotInLoopBasic RulesImmutableFieldDesign RulesMethodNamingConventionsNaming RulesAssignmentInOperandControversial RulesDontImportSunControversial RulesUseNotifyAllInsteadOfNotifyDesign RulesBooleanInstantiationBasic RulesSimpleDateFormatNeedsLocaleDesign RulesProperLoggerJakarta Commons Logging RulesUnnecessaryCaseChangejava.lang.String RulesEmptyFinallyBlockBasic RulesUnusedImportsImport Statement RulesUnnecessaryBooleanAssertionJUnit RulesAvoidFieldNameMatchingMethodNameNaming RulesExceptionAsFlowControlStrict Exception RulesJUnitSpellingJUnit RulesUseLocaleWithCaseConversionsDesign RulesJUnitTestsShouldIncludeAssertJUnit RulesTestClassWithoutTestCasesJUnit RulesMethodReturnsInternalArraySecurity Code GuidelinesUseArrayListInsteadOfVectorOptimization RulesAvoidReassigningParametersDesign RulesAvoidDuplicateLiteralsjava.lang.String RulesSignatureDeclareThrowsExceptionStrict Exception RulesClassNamingConventionsNaming RulesPositionLiteralsFirstInComparisonsDesign RulesSingularFieldControversial RulesSuspiciousHashcodeMethodNameNaming RulesUselessOverridingMethodBasic RulesAvoidConcatenatingNonLiteralsInStringBufferjava.lang.String RulesAvoidSynchronizedAtMethodLevelDesign RulesUseCorrectExceptionLoggingJakarta Commons Logging RulesOverrideBothEqualsAndHashcodeBasic RulesProperCloneImplementationClone Implementation RulesAtLeastOneConstructorControversial RulesAbstractNamingNaming RulesCyclomaticComplexityCode Size RulesAvoidFieldNameMatchingTypeNameNaming RulesMissingBreakInSwitchDesign RulesMissingStaticMethodInNonInstantiatableClassDesign RulesAvoidThrowingRawExceptionTypesStrict Exception RulesExcessivePublicCountCode Size RulesAccessorClassGenerationDesign RulesSuspiciousEqualsMethodNameNaming RulesUseStringBufferForStringAppendsOptimization RulesUnnecessaryFinalModifierBasic RulesEmptySwitchStatementsBasic RulesAvoidCatchingThrowableStrict Exception RulesAvoidNonConstructorMethodsWithClassNameNaming Rules