1. Java / Говнокод #2809

    +144.6

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    public class Main {
        public static void main(String[] args) {
        	f0();//this is call of f0() from line 4
        	f0();//this is call of f0() from line 4
        }
    
        public static void f0(){
        	System.out.println("hi, I am f0");
        	Exception e = new Exception();
        	if(e.getStackTrace()[1].getLineNumber()==3){
        		f1();
        	} else if(e.getStackTrace()[1].getLineNumber()==4){
    			f2();
        	} 
        }
        
    	public static void f1(){
    		System.out.println("hi, I am f1");
    	}
    
    	public static void f2(){
    		System.out.println("hi, I am f2");
    	}
    }

    вот кусочек, который выполняется по разному в зависимости от того с какой строчки в исходном коде он вызван. Сам сочинил.

    Запостил: pcherkas, 17 Марта 2010

    Комментарии (8) RSS

    • oj pervyj komment dolzhen byl byt'
      //this is call of f0() from line 3
      Ответить
    • Ну и че это за херня?
      >>Сам сочинил.
      Мо - ло - дец!
      Ответить
    • молодец, давай зачетку.
      Ответить
    • Представляю какое удивление ждет аффтара, если класс будет скомпилирован без отладочной информации :)
      Ответить
    • какой молодец, возьми с полки перожок.
      Ответить
    • +1 за вариант - "возьми пирожок"
      Ответить
    • Уважаемый, гость, сказавший

      >Представляю какое удивление ждет аффтара, если класс будет скомпилирован без отладочной информации :)

      Спешу вас уверить, что информация о номерах строк и названиях файлов исходного кода доступны во время выполнения вне зависимости компилировалась ли программа с или без отлад. информации. Отлад информация лиш добавляет в байт код сведения о названиях локальных переменных.
      Ответить
    • Комментарии про пирожок - не принимаю во внимание, ибо ибо...

      А кто задумается над прикладным смыслом использования информации о номере строки - тому и пирожок не грех дать.
      Ответить

    Добавить комментарий