summaryrefslogtreecommitdiff
path: root/plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html')
-rw-r--r--plugins/InspectionGadgets/src/inspectionDescriptions/DoubleBraceInitialization.html13
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