...
Wiki Markup |
---|
An alternative way of clearing the {{vector}} is to use the {{vector.clear()}} method. Likewise, if a range of elements hashave to be releasedremoved from the {{vector}}, {{vector.subList(fromIndex, toIndex).clear()}} can be used. In the context of this compliant solution, the {{fromIndex}} and the {{toIndex}} can both be {{0}} as the {{count}} variable is {{1}} on each iteration. \[[API 06|AA. Java References#API 06]\] |
...
Code Block | ||
---|---|---|
| ||
public class BadScope { private HashMap<Integer,String> hm = new HashMap<Integer, String>(); private void doSomething() { hm.put(1, "java"); // hm is used only here } } |
...
Code Block | ||
---|---|---|
| ||
Reader reader = new Reader();
button.addActionListener(reader);
try {
reader.readSomething();
} catch (IOException e) {
// Handle exception
} finally {
button.removeActionListener(reader); // Always gets executed
}
|
Noncompliant Code Example
...
Code Block | ||
---|---|---|
| ||
class HashMemLeak { private Map<SSLSocket, InetAddress> m = Collections.synchronizedMap(new HashMap<SSLSocket, InetAddress>()); public void storeTempConnection(SSLSocket sock, InetAddress ip) { m.put(sock, ip); } public void removeTempConnection(SSLSocket sock) { m.remove(sock); } } |
Compliant Solution
...