You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 45 Next »

Recommendations

MET00-J. Understand the difference between overriding and hiding

MET01-J. Follow good design principles while defining methods

MET02-J. Avoid ambiguous uses of overloading

MET03-J. For methods that return an array or collection prefer returning an empty array or collection over a null value

MET04-J. Always provide feedback about the resulting value of a method

MET05-J. Validate method parameters

MET06-J. Methods that perform a security check must be declared private or final

Rules

MET30-J. Follow the general contract while overriding the equals method

MET31-J. Ensure that hashCode() is overridden when equals() is overridden

MET32-J. Ensure that constructors do not call overridable methods

MET33-J. Do not subject overloaded methods to polymorphic invocations

MET34-J. Follow the general contract when implementing the compareTo method

MET35-J. Ensure that the clone method calls super.clone

MET36-J. Do not use deprecated methods

MET37-J. Do not call overridable methods from a privileged block

MET38-J. Do not invoke overridable methods on the clone under construction

Risk Assessment Summary

Recommendations

Recommendation

Severity

Likelihood

Remediation Cost

Priority

Level

MET00- J

low

unlikely

medium

P2

L3

MET01- J

low

unlikely

high

P1

L3

MET02- J

low

unlikely

high

P1

L3

MET03- J

low

unlikely

high

P1

L3

MET04- J

medium

probable

medium

P8

L2

MET05- J

medium

probable

medium

P8

L2

MET06- J

medium

probable

medium

P8

L2

Rules

Rules

Severity

Likelihood

Remediation Cost

Priority

Level

MET30- J

low

unlikely

medium

P2

L3

MET31- J

low

unlikely

high

P1

L3

MET32- J

medium

probable

medium

P8

L2

MET33- J

low

unlikely

high

P1

L3

MET34- J

medium

unlikely

medium

P4

L3


CON39-J. Ensure atomicity of 64-bit operations      The CERT Sun Microsystems Secure Coding Standard for Java      MET00-J. Understand the difference between overriding and hiding

  • No labels