Item 85. Alternatives Serialization
class Test {
static byte[] bomb() {
Set<Object> root = new HashSet<>(); // κ°μ²΄ κ·Έλν 루νΈ
Set<Object> s1 = root; // 루νΈμ λν 첫 λ²μ§Έ μ°Έμ‘°
Set<Object> s2 = new HashSet<>(); // 루νΈμ λ
립μ μΈ μλ‘μ΄ μ§ν©
for (int i = 0; i < 100; i++) {
// HashSet κ°μ²΄ μμ±
Set<Object> t1 = new HashSet<>();
Set<Object> t2 = new HashSet<>();
t1.add("foo");
// s1μ t1, t2 μΆκ°
s1.add(t1);
s1.add(t2);
// s2μ t1, t2 μΆκ°
s2.add(t1);
s2.add(t2);
// s1, s2λ₯Ό κ°κ° t1, t2λ‘ κ°±μ
s1 = t1;
s2 = t2;
}
return serialize(root);
}
}Last updated