java - custom compile time error -


i want show compile time error when call method.

like have class "myclass" in there 2 methods "methoda()" , "methodb()". make instance of "myclass" . using instance can call both methods need show compile time error if call "methodb()" before "methoda()"; strong text

class myclasss {     public void methoda()     {         //do thing     }     public void methodb()     {         //do thing     } } class myrunningclasss {     public static void main(string... args)     {         myclass mc = new myclass();          // not give compile time error.         mc.methoda();         mc.methodb();          // have  give compile time error.         mc.methodb();         mc.methoda();      }  } 

what suggesting isn't easy. need download openjdk , change it. it's large code base don't suggest that.

instead suggest add runtime assertion check , unit test code. if use maven or ant run tests part of build, these error detect @ build time, if tests, not compiler detects error.

what makes particularly difficult compiler if can number of things difficult determine @ compile time.

e.g.

public static somethinga(int n) {     //     if(n == x)        mc.methoda(); }  public static somethingb(int n) {     //     if(n == y)         mc.methodb(); }  // compile error or not for(int i=0;i<10;i++) {     somethingb(i);     somethinga(i); } 

there many patterns such feature useful, hard solve. e.g. making sure lock.unlock() after lock.lock(), can place these in different methods, or put conditions on them.


Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -