- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
/*
Было задание:
Дополните класс Main
public class Main {
*//* вставить код сюда *//*
public static void main(String[] args){}
}
...так, чтобы программа выдавала "Test".
Решив, что мы нихрена не сможем сделать, так как main
мы бы не смогли поменять, то решили исполнить
роль говнокодера в самом прекрасном исполнении...
*/
public class Main {
static int i = a();
static int a() {
System.out.println("Test");
return 0;
}
public static void main(String[] args) {}
}
/* И ЭТО ЕЩЁ И РАБОТАЕТ! */
https://ideone.com/hN44xE
Да даже джаву можно забаговать, если устроить циклическую зависимость. Можно увидеть, как final переменная меняет значение с null на что-то другое...
Достаточно сделать "leak of this" в соседний поток