diff options
Diffstat (limited to 'plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html')
-rw-r--r-- | plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html b/plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html new file mode 100644 index 000000000000..e2cf8b607f66 --- /dev/null +++ b/plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html @@ -0,0 +1,13 @@ +<html> +<body> +Reports <a href="http://www.c2.com/cgi/wiki?DoubleBraceInitialization">Double Brace Initialization</a>. +Double brace initialization can cause memory leaks when used from a non-<b>static</b> context, +because the anonymous <b>class</b> created will maintain a reference to the surrounding object. +It has worse performance than regular initialization because of the additional class loading required. +It can cause <b>equals()</b> comparisons to fail, if the <b>equals()</b> method does not accept subclasses as parameter (see link above). +And finally, it cannot be combined with Java 7 diamond operator, because that cannot be used with anonymous classes. +<!-- tooltip end --> +<p> + <small>New in 14</small> +</body> +</html>
\ No newline at end of file |