0

How to know which method you are in?

  1. public class MethodName {  
  2.    
  3.  public String methodOne() {  
  4.   return new Exception().getStackTrace()[0].toString();  
  5.  }  
  6.    
  7.  public String methodTwo() {  
  8.   return Thread.currentThread().getStackTrace()[2].toString();  
  9.  }  
  10.   
  11.  public static void main(String[] args) {  
  12.   MethodName name = new MethodName();  
  13.     
  14.   long start = System.currentTimeMillis();  
  15.   for (int i = 0; i < 100000; i++) {  
  16.    name.methodOne();  
  17.   }  
  18.   System.out.printf("First method - new Exception() - in %d millis\n",  
  19.      System.currentTimeMillis() - start);  
  20.     
  21.   start = System.currentTimeMillis();  
  22.   for (int i = 0; i < 100000; i++) {  
  23.    name.methodTwo();  
  24.   }  
  25.     
  26.   System.out.printf("Second method - Thread.currentThread() - in %d millis\n",  
  27.      System.currentTimeMillis() - start);  
  28.  }  
  29. }  

|

0 Comments

Copyright © 2009 So That I Can Remember All rights reserved. Theme by Laptop Geek. | Bloggerized by FalconHive.