当前位置:网站首页>Findbugs modification summary
Findbugs modification summary
2022-06-30 00:15:00 【linsa_ pursuer】
One 、 Frequently modified items
1.IS2_INCONSISTENT_SYNC Multithreading error - Inconsistent synchronization
get,set Method plus synchronized
2.EI_EXPOSE_REP2 Malicious code vulnerability - May expose internal implementations , By working with mutable object references
Set Or in the construction method ( When the object is Date Or array )
public void setAsd(Date asd) {
if (asd != null) {
this.asd = (Date)(asd.clone());
} else {
this.asd = null;
}
}
public synchronized void setArr(String[] arr) {
this.arr = Arrays.copyOf(arr, arr.length);
}
public InputParameters(
this.arr = Arrays.copyOf(arr, arr.length);
}
3.EI_EXPOSE_REP Malicious code vulnerability - Perhaps the internal implementation is exposed by returning a reference to a mutable object
Get In the method ( When the object is Date Or array )
public Date getAsd() {
if (this.asd != null) {
return new Date(this.asd.getTime());
} else {
return null;
}
}
public synchronized String[] getArr() {
return Arrays.copyOf(this.arr, arr.length);
}
4.DLS_DEAD_LOCAL_STORE High-risk - Unused local variables
5.NM_METHOD_NAMING_CONVENTION Method names should start with lowercase letters
6.MS_SHOULD_BE_FINAL Malicious code vulnerability - Property is not final, But it should be set to final
public static final String TPDM_SOFTWARE_TYPE_CREATE = " newly added ";
7.SE_BAD_FIELD A non... Occurred in the serialized class transient Also not serializable Instance properties for
serialize VO Reference non serialization VO, Will not be serialized VO Implement serialization
// Character list
private List<BaseRoleVO> roleList = new ArrayList<BaseRoleVO>();
A serialized class references a non serialized interface , Use the interface transient A modifier modifies
@Inject
private transient IMessageSender messageSender;
8.SBSC_USE_STRINGBUFFER_CONCATENATION performance - Method used in a loop + String splicing
For example:
// This is bad
String s = "";
for (int i = 0; i < field.length; ++i) {
s = s + field[i];
}
// This is better
StringBuffer buf = new StringBuffer();
for (int i = 0; i < field.length; ++i) {
buf.append(field[i]);
}
String s = buf.toString();
9.RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE High-risk - For a known is not null Repeat the null value judgment for the value of
10.URF_UNREAD_FIELD performance - Unreadable properties
No referenced properties , Delete it
11.STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE Multithreading error - Call static DateFormat
For example:
// This is bad
private static final SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.format(new Date())
// This is better
private static final String sdf = "yyyy-MM-dd HH:mm:ss";
new SimpleDateFormat(sdf).format(new Date())
12.OBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE The method may be because checked exception Causes the cleanup stream or resource to fail
finally The flow in the block is closed
13.DM_BOXED_PRIMITIVE_FOR_PARSING
This error is in packets / Unpack to deal with the conversion of basic types
This means that there is no need to create new objects to deal with the conversion of basic types , Just take the value directly
14.RV_RETURN_VALUE_IGNORED_BAD_PRACTICE Bad practice - Method ignores the exception return value
File creation and deletion , Whether the return value is successful requires judgment and processing
15.ES_COMPARING_STRINGS_WITH_EQ Bad practice - Use == or != Compare String
16.RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE Incorrect usage - Judge whether the value is null
Null value judgment is required to prevent null pointer exceptions
17.RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT There is a return value , But not used .
Get Some attribute , But there is no quotation , Delete it
18.DM_STRING_VOID_CTOR performance - Method calls are inefficient new String() Construction method
hold new String() Delete or change to +“”
19.NP_NULL_ON_SOME_PATH Incorrect usage - Null pointer references may occur
Null value judgment is required to prevent null pointer exceptions
20.DM_DEFAULT_ENCODING Trust the default character encoding
Stream operation needs to specify encoding
21.RC_REF_COMPARISON Bad practice - It is suspected that a quotation comparison has been made
String use equals Compare , Do not use ==
22.DM_NUMBER_CTOR performance - Method calls an inefficient number constructor ; Using static valueOf Instead of
new Long(cover) Change it to Long.parseLong(cover)
23.NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE High-risk - The return value of the call may appear null value
Null value judgment is required to prevent null pointer exceptions
24. REC_CATCH_EXCEPTION High-risk - Caught an exception that was not thrown
capture Exception Instead, capture the corresponding exception
25.ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD High-risk - Update static properties through an instance method
Do not use instance methods to update static properties
26.OBL_UNSATISFIED_OBLIGATION test - Method may fail while cleaning up a stream or resource
finally The flow in the block is closed
27. UWF_UNWRITTEN_FIELD Incorrect usage - Unassigned attribute
Yes get Method has no corresponding correct set Method , This causes the attribute to be empty forever
28.DLS_DEAD_LOCAL_STORE_SHADOWS_FIELD Useless local variables may have the same name as instance properties
Set In the method factor = factor; Change it to this.factor = factor
29. DMI_HARDCODED_ABSOLUTE_FILENAME This code uses hard coded to absolute pathnames to construct a File object
Instead of hard coding, use the configuration file to configure the file path
30. SA_LOCAL_SELF_ASSIGNMENT_INSTEAD_OF_FIELD Local variables assign values to themselves rather than to instance variables
Set In the method factor = factor; Change it to this.factor = factor
31. BC_IMPOSSIBLE_DOWNCAST_OF_TOARRAY Incorrect usage - A type conversion error occurred when a collection was converted to an array element String[] strs = Arrays.asList( objs ).toArray( new String[0] );
For example:
// This is bad
APWFREC_PAYMENT_HEAD_NEW[] arr = (APWFREC_PAYMENT_HEAD_NEW[]) list.toArray();
// This is better
APWFREC_PAYMENT_HEAD_NEW[] arr = list.toArray(new APWFREC_PAYMENT_HEAD_NEW[list.size()]);
32.BX_UNBOXING_IMMEDIATELY_REBOXED Boxed values are unpacked , Then it was repacked immediately
Base and reference types are properly converted , Do not repeat the conversion , basic —— quote —— basic
33. OS_OPEN_STREAM Bad practice - Method may fail when closing a stream
finally The flow in the block is closed
34.SA_FIELD_SELF_ASSIGNMENT Incorrect usage - The attribute itself is assigned
No referenced properties , Delete it
35. UCF_USELESS_CONTROL_FLOW High-risk - Useless control flow
It's useless if Judge (if Judge the empty sentence ), Delete it
36. UC_USELESS_OBJECT Our analysis shows that , This object is useless . It is created and modified , But its value will never exceed the method or produce any side effects . Or there are errors , And intend to use objects , Or you can delete it .
Create useless objects ( There's no place to use ), Delete it
37. UC_USELESS_VOID_METHOD Our analysis shows that , This non empty void Method does not actually do any useful work . Please check : Maybe its code is wrong , Or its body can be completely deleted .
Useless method , There is no use in the statements , Delete it
38.DMI_USELESS_SUBSTRING High-risk - call substring(0) Will return the original value
Method of use substring(0), Invalid method , The call returns the original value , Delete do not call
39. EC_NULL_ARG Incorrect usage - Call... With an empty argument equals()
equals(null) Change it to == null
40. EC_UNRELATED_TYPES Wrong use - Use equals() Compare different types
Integer and String use equals Compare , Not an option , Delete
41. NM_CLASS_NAMING_CONVENTION Class names should start with a capital letter
42. NP_GUARANTEED_DEREF Incorrect usage - null Value must be called
Null value judgment is required to prevent null pointer exceptions
43. NP_GUARANTEED_DEREF_ON_EXCEPTION_PATH Incorrect usage - null The value will be in exception Used in processing
Null value judgment is required to prevent null pointer exceptions
44. NP_NULL_ON_SOME_PATH_EXCEPTION Incorrect usage - A null pointer may be referenced in the exception path of a method
Null value judgment is required to prevent null pointer exceptions
45. NP_NULL_PARAM_DEREF Incorrect usage - Method calls put null Pass to a non null Parameters
The called method needs to perform null value judgment to prevent null pointer exceptions
46. NP_NULL_PARAM_DEREF_NONVIRTUAL Wrong use - A non virtual method call passed... To a non empty parameter null
The called method needs to perform null value judgment to prevent null pointer exceptions
47. RV_RETURN_VALUE_IGNORED Incorrect usage - Method ignores the return value
The return value is not used , Delete it
48. SA_LOCAL_DOUBLE_ASSIGNMENT High-risk - Double assign values to local variables
String title = title = "[ Rejection note ]" + cont + "APW rejected ";
Change it to
String title = "[ Rejection note ]" + cont + "APW rejected ";
49. SF_SWITCH_NO_DEFAULT Switch Statement does not contain default
50. UUF_UNUSED_FIELD performance - Useless properties
Useless attribute , Delete it
51. MS_MUTABLE_COLLECTION Variable set instances are assigned to final Static field of , So it can be changed by malicious code or accidentally .
Need to change to private type , To prevent from being tampered with , Provide a public method call
public static Map<Integer,String> getPrdConsentAuditMap(){
return Collections.unmodifiableMap(PRD_CONSENT_AUDIT_MAP);
}
public static List<Integer> getPrepayNodeSeqList(){
return Collections.unmodifiableList(PREPAY_NODE_SEQ_LIST);
}
- Total modifications
- IMSE_DONT_CATCH_IMSE Bad practice - Catch suspicious IllegalMonitorStateException
- BX_BOXING_IMMEDIATELY_UNBOXED performance - Unpack immediately after basic type packaging
- IJU_SETUP_NO_SUPER Wrong use - TestCase Defined setUp There is no call super.setUp()
- TQ_ALWAYS_VALUE_USED_WHERE_NEVER_REQUIRED Wrong use - A value uses an annotation restriction type , But this limitation will never happen
- TLW_TWO_LOCK_WAIT Multithreading error - Wait for two locks to be held
- RV_01_TO_INT Wrong use - 0 to 1 Random numbers of are treated as integers 0
- NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE High-risk - Parameter must be non null But it is marked as null
- RV_ABSOLUTE_VALUE_OF_RANDOM_INT Wrong use - Try to calculate 32 The absolute value of a bit random integer random.nextInt(Integer.MIN_VALUE)
- EC_INCOMPATIBLE_ARRAY_COMPARE Wrong use - Use equals() Compare incompatible arrays
- UL_UNRELEASED_LOCK_EXCEPTION_PATH Multithreading error - Method does not release locks on all exception paths
- SE_NONSTATIC_SERIALVERSIONID Bad practice - serialVersionUID No static Of
- UCF_USELESS_CONTROL_FLOW High-risk - Useless control flow
- BC_IMPOSSIBLE_CAST Wrong use - Impossible conversion
- XSS_REQUEST_PARAMETER_TO_SEND_ERROR Safety risk - servlet Cross site scripting vulnerability caused by reflection of
- DM_NEW_FOR_GETCLASS performance - An object is created just to get a method
- OBL_UNSATISFIED_OBLIGATION test - Method may fail while cleaning up a stream or resource
- UW_UNCOND_WAIT Multithreading error - Wait unconditionally
- DLS_DEAD_LOCAL_STORE_OF_NULL High-risk - hold null Set to local variables that will not be used
- NM_CLASS_NAMING_CONVENTION Class names should start with a capital letter
- RC_REF_COMPARISON_BAD_PRACTICE_BOOLEAN Wrong use - It is doubtful to compare references to two Boolean values
- MWN_MISMATCHED_NOTIFY Multithreading error - It doesn't match notify()
- NM_VERY_CONFUSING error - Very confusing method names
- FI_NULLIFY_SUPER Bad practice - empty Finalizer Super class is disabled finalizer
- MTIA_SUSPECT_STRUTS_INSTANCE_FIELD High-risk - Inherited struts Action Class uses instance variables
- DM_STRING_CTOR performance - The method calls an inefficient new String(String) Construction method
- STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE Multithreading error - Call static DateFormat
- NP_NULL_PARAM_DEREF_NONVIRTUAL Wrong use - A non virtual method call passed... To a non empty parameter null
- FI_EMPTY Bad practice - Empty... Should be deleted finalizer
- CD_CIRCULAR_DEPENDENCY test - There are circular references between classes
- EC_UNRELATED_TYPES Wrong use - Use equals() Compare different types
- EI_EXPOSE_STATIC_REP2 Malicious code vulnerability - Saving mutable objects in static fields may expose internal static state
- DMI_INVOKING_TOSTRING_ON_ANONYMOUS_ARRAY error - Execute... On an array toString
- SIC_INNER_SHOULD_BE_STATIC_ANON performance - You can reconstruct a static inner class
- STI_INTERRUPTED_ON_UNKNOWNTHREAD error - stay thread The instance calls static Thread.interrupted() Method
- CN_IDIOM_NO_SUPER_CALL Bad practice - clone Method is not called super.clone()
- VA_FORMAT_STRING_BAD_ARGUMENT Incorrect usage - The format string placeholder does not match the passed in parameter
- EQ_DOESNT_OVERRIDE_EQUALS High-risk - Class does not override the parent class equals Method
- BC_IMPOSSIBLE_DOWNCAST_OF_TOARRAY Incorrect usage - A type conversion error occurred when a collection was converted to an array element String[] strs = Arrays.asList( objs ).toArray( new String[0] );
- SE_NO_SUITABLE_CONSTRUCTOR_FOR_EXTERNALIZATION Bad practice - Class is extensible , But no parameterless constructor is provided
- TQ_EXPLICIT_UNKNOWN_SOURCE_VALUE_REACHES_ALWAYS_SINK Incorrect usage - Value needs type designation , But it is marked as unknown
- SIC_INNER_SHOULD_BE_STATIC_NEEDS_THIS performance - Can be raised into a static inner class
- EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS Bad practice - equals Detect incompatible parameter operations
- RV_RETURN_VALUE_OF_PUTIFABSENT_IGNORED Incorrect usage - Ignored putIfAbsent The return value of , Pass to putIfAbsent The value of is reused
- STCAL_INVOKE_ON_STATIC_CALENDAR_INSTANCE Multithreading error - Call static Calendar
- MS_CANNOT_BE_FINAL Malicious code vulnerability - Field is not final Of , Can not prevent malicious code attacks
- IS_INCONSISTENT_SYNC Multithreading error - Inconsistent synchronization
- SE_NO_SERIALVERSIONID Bad practice - Class is serializable , But it's not defined serialVersionUID
- EI_EXPOSE_REP2 Malicious code vulnerability - May expose internal implementations , By working with mutable object references
- NM_METHOD_CONSTRUCTOR_CONFUSION Incorrect usage - The obvious way / Construction methods are confused
- ICAST_INTEGER_MULTIPLY_CAST_TO_LONG High-risk - The result of the integer multiplication is converted to long type
- QF_QUESTIONABLE_FOR_LOOP High-risk - for There are complications in the loop , Subtle or erroneous self accretion
- DLS_DEAD_STORE_OF_CLASS_LITERAL Incorrect usage - Class holds useless characters
- NM_FUTURE_KEYWORD_USED_AS_MEMBER_IDENTIFIER Bad practice - Used the future java Identification that becomes a keyword in the version
- BC_VACUOUS_INSTANCEOF High-risk - instanceof Will always return to true
- INT_VACUOUS_BIT_OPERATION High-risk - There are holes in some bits when bit operations are performed on the shaping
- NP_NULL_INSTANCEOF Incorrect usage - A known null Value is checked to see if it is an instance of a type
- SIC_THREADLOCAL_DEADLY_EMBRACE Incorrect usage - Non static inner classes and ThreadLocal A deadly combination of
- EQ_UNUSUAL High-risk - Rare equals Method
- IJU_NO_TESTS Incorrect usage - TestCase No tests
- EQ_OVERRIDING_EQUALS_NOT_SYMMETRIC Incorrect usage - equals Method covers the equals Possible function discrepancy
- XFB_XML_FACTORY_BYPASS High-risk - The method is called directly xml A concrete implementation of the interface
- SWL_SLEEP_WITH_LOCK_HELD Multithreading error - Method called when obtaining the lock Thread.sleep()
- CN_IDIOM Bad practice - Class implements the Cloneable , But not defined or used clone Method
- WA_AWAIT_NOT_IN_LOOP Multithreading error - Not used in a loop Condition.await()
- DM_FP_NUMBER_CTOR performance - Method calls an inefficient floating-point Book constructor ; You should use static valueOf Instead of
- SF_SWITCH_NO_DEFAULT Switch Statement does not contain default
- NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE High-risk - The return value of the call may appear null value
- NP_CLONE_COULD_RETURN_NULL Bad practice - Clone Method may return null
- MS_OOI_PKGPROTECT Malicious code vulnerability - Property should be removed from the interface and access rights set to package protection
- DM_BOXED_PRIMITIVE_TOSTRING performance - Method uses boxed primitive types only to call toString
- EQ_ABSTRACT_SELF Bad practice - Abstract classes define covariant equals Method
- DM_STRING_TOSTRING performance - Method is called String Of toString() Method
- SE_METHOD_MUST_BE_PRIVATE Incorrect usage - The method must be private For serialization to work properly
- DL_SYNCHRONIZATION_ON_BOOLEAN Multithreading error - stay Boolean Using synchronization on may cause deadlock
- UWF_UNWRITTEN_FIELD Incorrect usage - Unassigned attribute
- IS2_INCONSISTENT_SYNC Multithreading error - Inconsistent synchronization
- IM_AVERAGE_COMPUTATION_COULD_OVERFLOW High-risk - Calculating the average may overflow
- BIT_SIGNED_CHECK_HIGH_BIT Incorrect usage - Check the sign of bit operation
- FL_MATH_USING_FLOAT_PRECISION Incorrect usage - Method uses the precision of floating point numbers in mathematical operations
- WS_WRITEOBJECT_SYNC Multithreading error - Class writeObject() Method is synchronous , But nothing else
- RV_RETURN_VALUE_IGNORED Incorrect usage - Method ignores the return value
- SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE Safety risk - A non constant string is passed to the method execution SQL sentence
- JCIP_FIELD_ISNT_FINAL_IN_IMMUTABLE_CLASS Bad practice - The properties of an immutable class should be final
- AM_CREATES_EMPTY_ZIP_FILE_ENTRY Bad practice - Created an empty zip Access to documents
- DM_NEXTINT_VIA_NEXTDOUBLE performance - Use Random Of nextInt Method to get a random integer , instead of nextDouble
- UI_INHERITANCE_UNSAFE_GETRESOURCE Bad practice - If the class is extended ,GetResource The use of may be unsafe
- SIO_SUPERFLUOUS_INSTANCEOF Incorrect usage - Unnecessary type detection uses instanceof The operator
- EQ_OTHER_NO_OBJECT Incorrect usage - equals() Method definition , But it doesn't cover equals(Object)
- USM_USELESS_ABSTRACT_METHOD test - Abstract methods are already defined in the implemented interface
- MTIA_SUSPECT_SERVLET_INSTANCE_FIELD High-risk - Expand Servlet Class uses instance variables
- DM_USELESS_THREAD Multithreading error - Use the default null run Method creates a thread
- ML_SYNC_ON_UPDATED_FIELD Multithreading error - Method synchronizes a modified property
- CO_SELF_NO_OBJECT Bad practice - Covariant compareTo() Definition
- BC_UNCONFIRMED_CAST High-risk - not checked / Unproven type conversions
- FI_FINALIZER_NULLS_FIELDS Bad practice - Finalizer Empty properties
- BIT_AND Incorrect usage - Incompatible bitmask (BIT_AND)
- FE_FLOATING_POINT_EQUALITY High-risk - Test floating point number equality
- TQ_EXPLICIT_UNKNOWN_SOURCE_VALUE_REACHES_NEVER_SINK Incorrect usage - Value does not require type designation , But marked as unknown
- NP_NULL_PARAM_DEREF Incorrect usage - Method calls put null Pass to a non null Parameters
- FB_MISSING_EXPECTED_WARNING test - findbugs Missing an expected or needed warning
- DMI_INVOKING_HASHCODE_ON_ARRAY Incorrect usage - Called in the array hashCode
- QBA_QUESTIONABLE_BOOLEAN_ASSIGNMENT Incorrect usage - Method assigns... In a Boolean expression boolean written words
- SA_FIELD_SELF_COMPARISON Incorrect usage - The attribute compares itself with itself
- UR_UNINIT_READ_CALLED_FROM_SUPER_CONSTRUCTOR Incorrect usage - The constructor of the parent class calls the method of uninitialized property
- ES_COMPARING_PARAMETER_STRING_WITH_EQ Bad practice - The comparison string parameter uses == or !=
- INT_BAD_COMPARISON_WITH_NONNEGATIVE_VALUE Incorrect usage - Error comparing non negative values with negative numbers
- INT_BAD_COMPARISON_WITH_SIGNED_BYTE Incorrect usage - Error comparing signed byte
- IO_APPENDING_TO_OBJECT_OUTPUT_STREAM Incorrect usage - Try adding information to an object output stream
- FI_MISSING_SUPER_CALL Bad practice - Finalizer There is no call to the parent class finalizer
- VA_FORMAT_STRING_EXTRA_ARGUMENTS_PASSED Incorrect usage - Pass arguments that are unnecessary to the format string actually used
- HE_EQUALS_USE_HASHCODE Bad practice - Class definition equals(), But using the Object.hashCode()
- IJU_BAD_SUITE_METHOD Incorrect usage - TestCase Declared a wrong suite Method
- DMI_CONSTANT_DB_PASSWORD Safety risk - Hard coded database password
- REC_CATCH_EXCEPTION High-risk - Caught an exception that was not thrown
- PS_PUBLIC_SEMAPHORES High-risk - Classes expose synchronization and signaling in common interfaces
- EC_UNRELATED_INTERFACES Incorrect usage - call equals() Compare different interface types
- UCF_USELESS_CONTROL_FLOW_NEXT_LINE Incorrect usage - Perform useless process control to the next line
- LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE test - OpenJDK There is a potential loss in logger The risk of , Because weak references
- NP_UNWRITTEN_FIELD Incorrect usage - Read uninitialized properties
- DMI_UNSUPPORTED_METHOD High-risk - Call an unsupported method
- RCN_REDUNDANT_COMPARISON_OF_NULL_AND_NONNULL_VALUE High-risk - Compare non null values and... Repeatedly null
- EC_BAD_ARRAY_COMPARE Incorrect usage - call equals(), And == The effect is the same
- EI_EXPOSE_REP Malicious code vulnerability - Perhaps the internal implementation is exposed by returning a reference to a mutable object
- NP_DEREFERENCE_OF_READLINE_VALUE High-risk - There is no judgment readLine() Whether the result of is empty
- UPM_UNCALLED_PRIVATE_METHOD performance - Private methods never used
- NP_NULL_ON_SOME_PATH Incorrect usage - Null pointer references may occur
- NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT Bad practice - equals() Method does not detect null Parameters
- EC_NULL_ARG Incorrect usage - Call... With an empty argument equals()
- SE_BAD_FIELD_STORE Bad practice - The non serialized value is stored in the instance variable of the serialized class
- VO_VOLATILE_REFERENCE_TO_ARRAY Multithreading error - Array of volatile References do not treat array elements as volatile To quote
- NP_SYNC_AND_NULL_CHECK_FIELD Multithreading error - Synchronization and null detection occur on the same property
- DM_EXIT Bad practice - Method is called System.exit(...)
- RC_REF_COMPARISON Bad practice - It is suspected that a quotation comparison has been made
- SE_NO_SUITABLE_CONSTRUCTOR Bad practice - Class is serializable , But the parent class does not define a parameterless constructor
- DC_DOUBLECHECK Multithreading error - The attribute may be double checked
- DMI_LONG_BITS_TO_DOUBLE_INVOKED_ON_INT Incorrect usage - stay int It's up-regulated Double.longBitsToDouble
- RpC_REPEATED_CONDITIONAL_TEST Incorrect usage - Repeat the judgment condition
- WMI_WRONG_MAP_ITERATOR performance - keySet Iterations are inefficient , Use entrySet Instead of
- DLS_DEAD_LOCAL_STORE High-risk - Unused local variables
- INT_BAD_REM_BY_1 Incorrect usage - Integer residual modulus 1
- RV_RETURN_VALUE_IGNORED_BAD_PRACTICE Bad practice - Method ignores the exception return value
- SA_LOCAL_SELF_ASSIGNMENT High-risk - Self assignment of local variables
- MS_SHOULD_BE_FINAL Malicious code vulnerability - Property is not final, But it should be set to final
- SIC_INNER_SHOULD_BE_STATIC performance - It should be a static inner class
- NP_GUARANTEED_DEREF Incorrect usage - null Value must be called
- SE_READ_RESOLVE_MUST_RETURN_OBJECT Bad practice - readResolve Method must return Object
- NP_LOAD_OF_KNOWN_NULL_VALUE High-risk - A known... Is loaded null value
- BX_BOXING_IMMEDIATELY_UNBOXED_TO_PERFORM_COERCION performance - Basic data is boxed and unpacked
- CN_IMPLEMENTS_CLONE_BUT_NOT_CLONEABLE Bad practice - Class definition clone() But it didn't come true Cloneable
- CO_ABSTRACT_SELF Bad practice - Abstract classes define covariant compareTo() Method
- BAC_BAD_APPLET_CONSTRUCTOR test - FALSE Applet Constructor depends on uninitialized AppletStub
- EQ_GETCLASS_AND_CLASS_CONSTANT Bad practice - equals Method failed because of subclass
- DB_DUPLICATE_SWITCH_CLAUSES High-risk - In two switch The same code is used in the statement
- DB_DUPLICATE_BRANCHES High-risk - The same code is used in both branches
- UOE_USE_OBJECT_EQUALS test - stay final Class equals, But it doesn't cover Object Of equals Method
- FI_USELESS Bad practice - Finalizer Except for calling the parent class finalizer I didn't do anything else
- NP_ALWAYS_NULL Incorrect usage - Called null The pointer
- DMI_VACUOUS_SELF_COLLECTION_CALL Incorrect usage - Calls to collections cannot be sensed
- DLS_DEAD_LOCAL_STORE_IN_RETURN Incorrect usage - Returns useless assignments in a statement
- IJU_ASSERT_METHOD_INVOKED_FROM_RUN_METHOD Incorrect usage - stay run Methods JUnit Inspection cannot be reported to JUnit
- DMI_EMPTY_DB_PASSWORD Safety risk - Empty database password
- DM_BOOLEAN_CTOR performance - Method calls are inefficient Boolean Construction method ; Use Boolean.valueOf(...) Instead of
- BC_IMPOSSIBLE_DOWNCAST Incorrect usage - Transformation is impossible
- BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS Bad practice - Equals Methods should not assume anything about parameter types
- RV_EXCEPTION_NOT_THROWN Incorrect usage - After the exception is created, it is discarded , Don't throw
- VA_PRIMITIVE_ARRAY_PASSED_TO_OBJECT_VARARG Incorrect usage - An array of primitive types is passed to a method that expects variable object type parameters
- LI_LAZY_INIT_UPDATE_STATIC Multithreading error - Bad delay initializing and updating static properties
- SA_FIELD_SELF_ASSIGNMENT Incorrect usage - The attribute itself is assigned
- EQ_ALWAYS_FALSE Incorrect usage - equals Method always returns false
- DMI_RANDOM_USED_ONLY_ONCE Bad practice - Random The object is created only once
- NM_CLASS_NOT_EXCEPTION Bad practice - Class No inheritance Exception, Although the name looks like an anomaly
- SA_LOCAL_DOUBLE_ASSIGNMENT High-risk - Double assign values to local variables
- NP_NULL_PARAM_DEREF_ALL_TARGETS_DANGEROUS Incorrect usage - Method call passing null Give a non empty parameter (ALL_TARGETS_DANGEROUS)
- NP_TOSTRING_COULD_RETURN_NULL Bad practice - toString Method may return null
- BC_BAD_CAST_TO_ABSTRACT_COLLECTION High-risk - Converting to an abstract collection is questionable
- NM_LCASE_HASHCODE Class definition hashcode(); Should be hashCode() Well ?
- RU_INVOKE_RUN Multithreading error - Called... In the thread run( Do you mean to start again ?)
- DMI_INVOKING_TOSTRING_ON_ARRAY Incorrect usage - Called the array of toString
- NM_METHOD_NAMING_CONVENTION Method names should start with lowercase letters
- RCN_REDUNDANT_COMPARISON_TWO_NULL_VALUES High-risk - Compare two... Repeatedly null value
- SA_LOCAL_SELF_COMPUTATION Incorrect usage - Meaningless self calculation of a variable ( such as x & x)
- MS_MUTABLE_HASHTABLE Malicious code vulnerability - Properties are variable Hashtable
- RV_DONT_JUST_NULL_CHECK_READLINE High-risk - The method is lost readLine Result , After detecting that it is not empty .
- ES_COMPARING_STRINGS_WITH_EQ Bad practice - Use == or != Compare String
- DL_SYNCHRONIZATION_ON_SHARED_CONSTANT Multithreading error - Synchronize internal String May cause deadlock
- MF_METHOD_MASKS_FIELD Incorrect usage - Method defines a variable , With the same name as the instance variable .
- EQ_SELF_USE_OBJECT Incorrect usage - Covariance equals() Method definition , Inherited Object.equals(Object)
- ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND Incorrect usage - int Value to float, And pass it to Math.round
- GC_UNRELATED_TYPES Incorrect usage - There is no correlation between generic parameters and method parameters
- BC_IMPOSSIBLE_INSTANCEOF Incorrect usage - instanceof Keep returning false
- SBSC_USE_STRINGBUFFER_CONCATENATION performance - Method used in a loop + String splicing
- ICAST_INT_CAST_TO_DOUBLE_PASSED_TO_CEIL Incorrect usage - int convert to double, And pass it to Math.ceil
- UG_SYNC_SET_UNSYNC_GET Multithreading error - Unsynchronized getter Method , synchronous setter Method
- RE_BAD_SYNTAX_FOR_REGULAR_EXPRESSION Incorrect usage - Illegal regular expression
- SA_FIELD_SELF_COMPUTATION Incorrect usage - Meaningless self calculation ( such as x & x)
- DMI_SCHEDULED_THREAD_POOL_EXECUTOR_WITH_ZERO_CORE_THREADS Incorrect usage - Created without any threads ScheduledThreadPoolExecutor
- DMI_USELESS_SUBSTRING High-risk - call substring(0) Will return the original value
- IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD High-risk - Ambiguous calls to inherited or external methods
- OS_OPEN_STREAM Bad practice - Method may fail when closing a stream
- HE_INHERITS_EQUALS_USE_HASHCODE Bad practice - Class inherited equals(), But using the Object.hashCode()
- SE_NONFINAL_SERIALVERSIONID Bad practice - serialVersionUID No final Of
- EQ_SELF_NO_OBJECT Bad practice - Covariance equals() Method definition
- SF_DEAD_STORE_DUE_TO_SWITCH_FALLTHROUGH because switch Useless storage caused by statements
- SW_SWING_METHODS_INVOKED_IN_SWING_THREAD Bad practice - some swing The method needs to be in swing Call in thread
- VA_FORMAT_STRING_ILLEGAL Incorrect usage - Illegal format string
- DM_NUMBER_CTOR performance - Method calls an inefficient number constructor ; Using static valueOf Instead of
- RV_REM_OF_RANDOM_INT High-risk - rest 32 Bit signed random integer
- EQ_COMPARING_CLASS_NAMES Incorrect usage - equals Method to compare class names instead of classes
- ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD High-risk - Update static properties through an instance method
- TQ_NEVER_VALUE_USED_WHERE_ALWAYS_REQUIRED Incorrect usage - The use of annotation tags on a value does not restrict the type , But this limitation is necessary
- NS_NON_SHORT_CIRCUIT High-risk - Suspected non short circuit logic
- VA_FORMAT_STRING_NO_PREVIOUS_ARGUMENT Incorrect usage - The format string has no preceding parameters
- SE_PRIVATE_READ_RESOLVE_NOT_INHERITED High-risk - private readResolve Method does not inherit from parent class
- RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE High-risk - For a known is not null Repeat the null value judgment for the value of
- NM_LCASE_TOSTRING Class definition tostring(); Should be toString() Well ?
- HSC_HUGE_SHARED_STRING_CONSTANT performance - Huge string constants are repeated among multiple class files
- SE_TRANSIENT_FIELD_NOT_RESTORED Bad practice - Transient Property is set when it is no longer deserialized
- JLM_JSR166_LOCK_MONITORENTER Multithreading error - stay java.util.concurrent Lock Synchronized on
- EQ_ALWAYS_TRUE Incorrect usage - equals Method always returns true
- ISC_INSTANTIATE_STATIC_CLASS Bad practice - Classes that provide only static methods do not need to be instantiated
- ICAST_IDIV_CAST_TO_DOUBLE High-risk - int The result of division is converted into double or float
- RC_REF_COMPARISON_BAD_PRACTICE Incorrect usage - Suspicious references vs. constants
- FI_EXPLICIT_INVOCATION Bad practice - Call directly finalizer
- ESync_EMPTY_SYNC Multithreading error - Empty sync block
- DMI_USING_REMOVEALL_TO_CLEAR_COLLECTION Incorrect usage - Do not use removeAll Empty the set
- SE_BAD_FIELD A non... Occurred in the serialized class transient Also not serializable Instance properties for
- NP_STORE_INTO_NONNULL_FIELD Incorrect usage - The attribute has been marked NonNull, But there is a null value
- IT_NO_SUCH_ELEMENT Bad practice - Iterator next() Method cannot throw NoSuchElementException
- HRS_REQUEST_PARAMETER_TO_HTTP_HEADER Safety risk - HTTP Response split vulnerability
- DMI_THREAD_PASSED_WHERE_RUNNABLE_EXPECTED High-risk - Hope to pass in Runnable The place of the came into a Thread
- NP_GUARANTEED_DEREF_ON_EXCEPTION_PATH Incorrect usage - null The value will be in exception Used in processing
- RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE High-risk - Known null Value is detected repeatedly
- DMI_CALLING_NEXT_FROM_HASNEXT Incorrect usage - hasNext Method is called next Method
- HE_HASHCODE_USE_OBJECT_EQUALS Bad practice - Defined hashCode() Class of uses Object.equals()
- VA_FORMAT_STRING_EXPECTED_MESSAGE_FORMAT_SUPPLIED Incorrect usage - Need to use printf Style used MessageFormat
- NP_BOOLEAN_RETURN_NULL Bad practice - Method returns boolean Type returns null
- RI_REDUNDANT_INTERFACES High-risk - Class implements the same interface as the parent class
- DL_SYNCHRONIZATION_ON_UNSHARED_BOXED_PRIMITIVE Multithreading error - Synchronization is used on the basic properties of boxing
- STCAL_STATIC_CALENDAR_INSTANCE Multithreading error - static state Calendar
- RR_NOT_CHECKED Bad practice - Method ignored InputStream.read() The return value of
- IL_INFINITE_RECURSIVE_LOOP Incorrect usage - The obvious infinite recursive loop
- DMI_NONSERIALIZABLE_OBJECT_WRITTEN High-risk - Non persistent objects are written to ObjectOutput
- GC_UNCHECKED_TYPE_IN_GENERIC_CALL Bad practice - An unchecked type is used in a generic call
- IMA_INEFFICIENT_MEMBER_ACCESS test - Method accesses private members of a owning class
- FI_PUBLIC_SHOULD_BE_PROTECTED Malicious code vulnerability - Finalizer Should be protected, It can't be public
- RV_CHECK_FOR_POSITIVE_INDEXOF High-risk - Method check check String.indexOf Whether the result of is a positive number
- ICAST_QUESTIONABLE_UNSIGNED_RIGHT_SHIFT High-risk - Unsigned shift right converts to short/byte
- DM_STRING_VOID_CTOR performance - Method calls are inefficient new String() Construction method
- RE_POSSIBLE_UNINTENDED_PATTERN Incorrect usage - "." As a regular expression
- WL_USING_GETCLASS_RATHER_THAN_CLASS_LITERAL Multithreading error - stay getClass Use synchronization on instead of class In words
- ICAST_BAD_SHIFT_AMOUNT Incorrect usage - The value shifted to the right is not 0..31 Within the scope of
- SF_SWITCH_FALLTHROUGH Switch One of the statements case After the failure, we went to the next case
- DP_DO_INSIDE_DO_PRIVILEGED Bad practice - Method calls should be in doPrivileged In block
- NO_NOTIFY_NOT_NOTIFYALL Multithreading error - Use notify() instead of notifyAll()
- SS_SHOULD_BE_STATIC performance - Unread properties : Whether this attribute should be static Of ?
- DM_RUN_FINALIZERS_ON_EXIT Bad practice - Method called a dangerous runFinalizersOnExit Method
- MS_FINAL_PKGPROTECT Malicious code vulnerability - Attributes should be both final and package protected Of
- BC_BAD_CAST_TO_CONCRETE_COLLECTION High-risk - Converting to a concrete set may be problematic
- BIT_IOR_OF_SIGNED_BYTE Incorrect usage - In the signed byte The progressive bit on the value OR operation
- MSF_MUTABLE_SERVLET_FIELD Multithreading error - Variable servlet attribute
- SE_BAD_FIELD_INNER_CLASS Bad practice - Not serializable Class has a serializable inner class
- BIT_ADD_OF_SIGNED_BYTE Incorrect usage - In the signed byte The progressive bit on the value add operation
- FI_FINALIZER_ONLY_NULLS_FIELDS Bad practice - Finalizer Neutrons and null attribute
- DE_MIGHT_IGNORE Bad practice - Method may ignore exceptions
- XSS_REQUEST_PARAMETER_TO_SERVLET_WRITER Safety risk - Servlet Reflection cross domain scripting vulnerability
- ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD Multithreading error - The properties of using synchronization may change
- SQL_BAD_PREPARED_STATEMENT_ACCESS Incorrect usage - Method attempts to access PreparedStatement The index of the parameter is 0
- DM_CONVERT_CASE internationalization - Consider using an international parameterized version of the calling method
- SE_TRANSIENT_FIELD_OF_NONSERIALIZABLE_CLASS High-risk - Class transient Property cannot be serialized
- NN_NAKED_NOTIFY Multithreading error - Not using synchronized packages notify
- VA_FORMAT_STRING_MISSING_ARGUMENT Incorrect usage - The parameter referenced by the format string is missing
- IC_SUPERCLASS_USES_SUBCLASS_DURING_INITIALIZATION Bad practice - The parent class is initialized with a subclass
- SA_LOCAL_SELF_COMPARISON Incorrect usage - Compare yourself with your own value
- IM_BAD_CHECK_FOR_ODD High-risk - Parity judgment cannot be applied to negative numbers
- NP_CLOSING_NULL Incorrect usage - close() A call that is always null Value
- XSS_REQUEST_PARAMETER_TO_JSP_WRITER Safety risk - JSP Reflection call cross domain scripting vulnerability
- IS_FIELD_NOT_GUARDED Multithreading error - Property does not guarantee synchronous access
- DM_GC performance - Call garbage collection directly , Especially the suspicious code in the performance test
- IM_MULTIPLYING_RESULT_OF_IREM Incorrect usage - The result of integer multiplication is an integer
- SE_COMPARATOR_SHOULD_BE_SERIALIZABLE Bad practice - Comparator It didn't come true Serializable
- HE_HASHCODE_NO_EQUALS Bad practice - Class definition hashCode() But there is no definition equals()
- MF_CLASS_MASKS_FIELD Incorrect usage - Class defines properties that override the properties of the parent class
- NM_VERY_CONFUSING_INTENTIONAL Bad practice - Very confusing method name ( It could be an internal method )
- SR_NOT_CHECKED Bad practice - Method ignores InputStream.skip() Result
- LI_LAZY_INIT_STATIC Multithreading error - Wrong, right static Property has been deferred initialized
- DMI_ANNOTATION_IS_NOT_VISIBLE_TO_REFLECTION Incorrect usage - Cannot use reflection detection not marked runtime rentention The existence of annotations
- ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH Bad practice - Method may be closing database Resource failed because of an exception
- BIT_IOR Incorrect usage - Incompatible bitmask (BIT_IOR)
- ODR_OPEN_DATABASE_RESOURCE Bad practice - Method may be closing database Resource failed
- IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN Incorrect usage - Parameter not used , But it was reassigned
- SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING Safety risk - Using a non constant string, we create a PreparedStatement
- UUF_UNUSED_FIELD performance - Useless properties
- RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE Incorrect usage - Judge whether the value is null
- EQ_OTHER_USE_OBJECT Incorrect usage - equals() Method definitions do not override Object.equals(Object)
- SP_SPIN_ON_FIELD Multithreading error - Method to loop through a property
- SI_INSTANCE_BEFORE_FINALS_ASSIGNED Bad practice - In all static final Before property assignment static The initialization block creates an instance
- NP_ALWAYS_NULL_EXCEPTION Incorrect usage - A null pointer is referenced in the exception path of the method
- MS_EXPOSE_REP Malicious code vulnerability - Public static Method may expose its internal implementation by returning an array
- VA_FORMAT_STRING_BAD_CONVERSION_TO_BOOLEAN High-risk - Non Boolean parameters use %b It's formatted
- MS_PKGPROTECT Malicious code vulnerability - The attribute should be package protected
- NP_NONNULL_RETURN_VIOLATION Incorrect usage - Method may return null, But the statement @NonNull
- J2EE_STORE_OF_NON_SERIALIZABLE_OBJECT_INTO_SESSION Bad practice - stay HttpSession Non serializable objects are saved in
- NM_SAME_SIMPLE_NAME_AS_SUPERCLASS Bad practice - The class name should not be the same as the name of the parent class
- DMI_BLOCKING_METHODS_ON_URL performance - URL Of equals and hashCode The method will be blocked
- HE_SIGNATURE_DECLARES_HASHING_OF_UNHASHABLE_CLASS Incorrect usage - A class that cannot be hashed is declared in the hash construct
- UR_UNINIT_READ Incorrect usage - The uninitialized class is read in the constructor
- WA_NOT_IN_LOOP Multithreading error - Wait Not in a loop
- DMI_FUTILE_ATTEMPT_TO_CHANGE_MAXPOOL_SIZE_OF_SCHEDULED_THREAD_POOL_EXECUTOR Incorrect usage - Try to modify ScheduledThreadPoolExecutor The maximum number of
- RV_RETURN_VALUE_IGNORED2 Incorrect usage - Method ignores the return value
- NM_FIELD_NAMING_CONVENTION Attribute names should start with lowercase letters
- FB_UNEXPECTED_WARNING test - Not expected / Unexpected findbugs Warning
- BX_UNBOXED_AND_COERCED_FOR_TERNARY_OPERATOR Incorrect usage - The basic type is used for ternary expression after unpacking
- DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED Bad practice - Classloaders It should only be doPrivileged Blocks are created
- NM_WRONG_PACKAGE Incorrect usage - Method does not override the method of the parent class , Because the package of parameters is incorrect
- IL_CONTAINER_ADDED_TO_ITSELF Incorrect usage - A collection is added to itself
- CI_CONFUSED_INHERITANCE High-risk - Class is final Of , But it defines protected attribute
- HE_USE_OF_UNHASHABLE_CLASS Incorrect usage - The class used in the hash data structure is undefined hashCode() Method
- IJU_SUITE_NOT_STATIC Incorrect usage - TestCase Realized the non static suite Method
- RS_READOBJECT_SYNC Multithreading error - Class readObject() Methods are not synchronized
- AM_CREATES_EMPTY_JAR_FILE_ENTRY Bad practice - Created an empty jar Method entrance
- VA_FORMAT_STRING_BAD_CONVERSION_FROM_ARRAY Incorrect usage - Useless formatting of the array using a format string
- SF_DEAD_STORE_DUE_TO_SWITCH_FALLTHROUGH_TO_THROW switch Statement failure throws an exception that results in useless storage
- RV_ABSOLUTE_VALUE_OF_HASHCODE Incorrect usage - Wrong attempt to calculate signed 32 position hashcodde The absolute value of
- EQ_DONT_DEFINE_EQUALS_FOR_ENUM Incorrect usage - Enumeration defines covariance equals() Method definition
- SA_FIELD_DOUBLE_ASSIGNMENT Incorrect usage - Double assignment of attributes
- DMI_COLLECTION_OF_URLS performance - URL Of Maps and sets It may be a performance problem
- NM_SAME_SIMPLE_NAME_AS_INTERFACE Bad practice - The class name should not be the same as the implemented interface name
- UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Incorrect usage - Constructor does not initialize property
- TQ_MAYBE_SOURCE_VALUE_REACHES_NEVER_SINK Incorrect usage - Value may have a type modifier , The way it has been used is contrary to this type modifier
- SE_NONLONG_SERIALVERSIONID Bad practice - serialVersionUID No long type
- RV_REM_OF_HASHCODE High-risk - hashCode The result may be negative negative
- NS_DANGEROUS_NON_SHORT_CIRCUIT High-risk - Potential hazards use non short jump logic
- USM_USELESS_SUBCLASS_METHOD test - Method proxy to parent method
- ITA_INEFFICIENT_TO_ARRAY performance - Method used toArray() For empty array parameters
- DM_MONITOR_WAIT_ON_CONDITION Multithreading error - Monitor according to conditions wait() Call to
- BOA_BADLY_OVERRIDDEN_ADAPTER Incorrect usage - Class overrides the method adapter error implemented in the parent class
- IC_INIT_CIRCULARITY High-risk - Initialize the loop
- NM_FUTURE_KEYWORD_USED_AS_IDENTIFIER Bad practice - The mark used is the future java Keywords in version
- EC_UNRELATED_CLASS_AND_INTERFACE Incorrect usage - equals() Compare unrelated classes and interfaces
- TQ_MAYBE_SOURCE_VALUE_REACHES_ALWAYS_SINK Incorrect usage - Value may not carry a class modifier , But this class modifier is always needed in use
- FE_TEST_IF_EQUAL_TO_NOT_A_NUMBER Incorrect usage - Test whether it is related to NaN equal
- NM_CONFUSING Bad practice - Confused method name
- VA_FORMAT_STRING_ARG_MISMATCH Incorrect usage - The number of format string parameters is not equal to the number of placeholders
- NP_NULL_ON_SOME_PATH_EXCEPTION Incorrect usage - A null pointer may be referenced in the exception path of a method
- DL_SYNCHRONIZATION_ON_BOXED_PRIMITIVE Multithreading error - Synchronous boxing of basic types may cause deadlocks
- IJU_TEARDOWN_NO_SUPER Incorrect usage - TestCase Defined tearDown There is no call super.tearDown()
- SE_READ_RESOLVE_IS_STATIC Incorrect usage - readResolve Method has no life for static Method
- NP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE High-risk - Pointer references over this path are not realizable
- UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS Incorrect usage - Non callable methods defined in anonymous inner classes
- VA_FORMAT_STRING_BAD_CONVERSION Incorrect usage - The supplied parameter type does not match the format tag
- EC_ARRAY_AND_NONARRAY Incorrect usage - equals() Used to compare arrays and non arrays
- NM_BAD_EQUAL Class definition equal(Object), Should be equals(Object) Well ?
- EC_UNRELATED_TYPES_USING_POINTER_EQUALITY Incorrect usage - Use pointers to compare different types
- STI_INTERRUPTED_ON_CURRENTTHREAD Incorrect usage - currentThread() Unnecessary use of calls , Called interrupted()
- RE_CANT_USE_FILE_SEPARATOR_AS_REGULAR_EXPRESSION Incorrect usage - File.separator Use as regular expression
- MWN_MISMATCHED_WAIT Multithreading error - It doesn't match wait()
- IL_INFINITE_LOOP Incorrect usage - The obvious infinite loop
- NP_IMMEDIATE_DEREFERENCE_OF_READLINE High-risk - Immediately used readLine() Result
- SC_START_IN_CTOR Multithreading error - Constructor called Thread.start()
- STCAL_STATIC_SIMPLE_DATE_FORMAT_INSTANCE Multithreading error - static state DateFormat
- HE_EQUALS_NO_HASHCODE Bad practice - Class definition equals(), But no hashCode()
- UL_UNRELEASED_LOCK Multithreading error - Method does not release the lock in any path
- PZLA_PREFER_ZERO_LENGTH_ARRAYS High-risk - Consider returning an empty array instead of null
- SKIPPED_CLASS_TOO_BIG High-risk - Class is too large to parse
- NP_ARGUMENT_MIGHT_BE_NULL Incorrect usage - Method does not check for null arguments
- UM_UNNECESSARY_MATH performance - Method constants call static Math Class method
- NM_WRONG_PACKAGE_INTENTIONAL Bad practice - Method does not override the method of the parent class because the parameter package name is wrong
- NP_NONNULL_PARAM_VIOLATION Incorrect usage - Method transfer null Give a non null parameter
- BIT_AND_ZZ Incorrect usage - Check ((...) & 0) == 0 Is it true
- HRS_REQUEST_PARAMETER_TO_COOKIE Safety risk - HTTP cookie May come from untrusted input
- SQL_BAD_RESULTSET_ACCESS Incorrect usage - Method to access a ResultSet, But index yes 0
- INT_VACUOUS_COMPARISON High-risk - The null comparison of shaping
- EQ_COMPARETO_USE_OBJECT_EQUALS Bad practice - Class definition compareTo(...), But using the Object.equals()
- DMI_HARDCODED_ABSOLUTE_FILENAME High-risk - Class contains a hard coded absolute path
- DMI_COLLECTIONS_SHOULD_NOT_CONTAIN_THEMSELVES Incorrect usage - A collection should not contain itself
- URF_UNREAD_FIELD performance - Unreadable properties
- DLS_OVERWRITTEN_INCREMENT Incorrect usage - Rewrites autoincrement
- BIT_SIGNED_CHECK Bad practice - Detect signed bit operations
- UWF_NULL_FIELD Incorrect usage - Property was set to null
- DE_MIGHT_DROP Bad practice - Method may throw an exception
- DMI_BAD_MONTH Incorrect usage - about month Bad constant value
- MS_MUTABLE_ARRAY Malicious code vulnerability - Property is a variable array
- SE_INNER_CLASS Bad practice - Serializable inner classes
- OS_OPEN_STREAM_EXCEPTION_PATH Bad practice - The method may fail due to an exception when closing the flow
- AT_OPERATION_SEQUENCE_ON_CONCURRENT_ABSTRACTION Concurrent Abstract sequential calls may not be atomic
- BX_UNBOXING_IMMEDIATELY_REBOXED Boxed values are unpacked , Then it was repacked immediately
- CO_COMPARETO_RESULTS_MIN_VALUE compareTo() or compare() return Integer.MIN_VALUE
- DLS_DEAD_LOCAL_STORE_SHADOWS_FIELD Useless local variables may have the same name as instance properties
- DMI_ARGUMENTS_WRONG_ORDER Method parameter sequence flip
- DMI_BIGDECIMAL_CONSTRUCTED_FROM_DOUBLE from double structure BigDecimal Precision is not specified in
- DMI_DOH An obviously unreasonable method call
- DMI_ENTRY_SETS_MAY_REUSE_ENTRY_OBJECTS An entry may be added because of reuse Entry Object causes failure
- DM_DEFAULT_ENCODING Trust the default character encoding
- ICAST_INT_2_LONG_AS_INSTANT int convert to long, Used as absolute time
- INT_BAD_COMPARISON_WITH_INT_VALUE Wrong comparison int Values and long Constant
- JML_JSR166_CALLING_WAIT_RATHER_THAN_AWAIT stay util.concurrent Monitoring style is used in the abstract wait Method
- NP_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD Read uninitialized public or protected attribute
- OBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE The method may be because checked exception Causes the cleanup stream or resource to fail
- PZ_DONT_REUSE_ENTRY_OBJECTS_IN_ITERATORS No use iterator Reuse in entry object
- RV_CHECK_COMPARETO_FOR_SPECIFIC_RETURN_VALUE compareTo The returned value and the specified value are detected
- RV_NEGATING_RESULT_OF_COMPARETO Changed compareTo()/compare() The positive and negative of the result
- RV_RETURN_VALUE_IGNORED_INFERRED Method ignores the return value , Is this normal ?
- SA_LOCAL_SELF_ASSIGNMENT_INSTEAD_OF_FIELD Local variables assign values to themselves rather than to instance variables
- URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD Unread public/protected attribute
- UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD Unused public or protected attribute
- UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD Uninitialized public or protected attribute
- VA_FORMAT_STRING_USES_NEWLINE Formatting code should use %n Instead of \n
- VO_VOLATILE_INCREMENT volatile The autoincrement operation of is not atomic
边栏推荐
猜你喜欢

Buffer flow exercise

FPGA Development (2) -- IIC communication

Unity splashimage scaling problem

How to write controller layer code gracefully?

Three postures of anti CSRF blasting

After 8 years of polishing, "dream factory of game design" released an epic update!

New CorelDRAW technical suite2022 latest detailed function introduction

JVM之栈空间

漫画安全HIDS、EDR、NDR、XDR

js中的事件
随机推荐
Introduction to reptiles: data capture of Betta barrage, with 11 introductory notes attached
label问题排查:打不开标注好的图像
MySQL multi table query
Unity splashimage scaling problem
Will the flush SQL CDC parallelism affect the order? Generally, only 1 can be set for data synchronization.
Leetcode (633) -- sum of squares
vsftp 与 TFTP 与 samba 与 nfs 复习
Solr基础操作13
modelsim的TCL脚本的define incdir命令解析
Solr basic operation 6
Construction of module 5 of actual combat Battalion
QT learning 01 GUI program principle analysis
HTAP x cloud native: tidb accelerates the release of data value and realizes data agility
vim插件管理器vim-plug安装方法
AI chief architect 9- huxiaoguang, propeller model library and industry application
leetcode 416. Partition Equal Subset Sum 分割等和子集(中等)
MySQL functions and constraints
How long will it take to open a mobile account? In addition, is it safe to open a mobile account?
What is IGMP? What is the difference between IGMP and ICMP?
Cloud native enthusiast weekly: cool collection of grafana monitoring panels