|
|
|
|
|
by zvrba
1757 days ago
|
|
That'd be cool. It just occurred to me that I could probably do the same with attributes and DynamicProxy for C#. And also implement additional checks like "IF X is thrown, its properties must satisfiy some constraints.". (I program both in Java and C# these days.) Such "UnexpectedException" as I suggested would serve two purposes: 1) well, knowing that something unexpected happened and allowing you to handle it with "last chance handler", 2) helping the developers maintain the contract. If you change a method so that it can throw some new exceptions (compared to the previous version), you've broken its contract/compatibility. This would then show up during testing. > You'll still have your "throws" statement but then the tool would wrap calls t Yes. Fortunately, Java allows you to mention subclasses of RuntimeException in "throws" declaration. |
|