Proposal: Automatic Resource Management
Xavi Miró
xmirog at gmail.com
Wed Mar 4 21:49:29 PST 2009
I like the simplicity of Josh' solution, the rule of throwing the most
important exception (the first) and silent the others, using an
interface whose method close simply throws Exception...For the Java
source code I've been writing for the last 10 years it would fit 100%, I
can't remember any "corner case" where it wouldn't fit well, but of
course if we can apply this solution to more use cases without losing
much simplicity, that would be perfect.
For me, using a modifier like finally would also be acceptable.
I would love to have this ARM proposal in Java 7!
Xavi
Stephen Colebourne wrote:
> > interface Disposable {
> > void close() throws Exception;
> > }
> > interface Destroyable {
> > void dispose() throws Exception;
> > }
> > interface Kloseable {
> > void destroy() throws Exception;
> > }
>
> Er, no. If its to be an interface it needs to be just one.
>
> A single interface - Disposable defining close() covers most use cases,
> and API writers would adapt in the future.
>
>
>> public finally void release() { ... }
>>
>
> I think this works well, and opens up more options. Are there any
> specific grammer objections?
>
> It would be possible to add a marker interface Finally which enforces
> the presence of the finally modifier, but that seems to have little
> obvious benefit, and be a bit magical.
>
> Stephen
>
>
>
More information about the coin-dev
mailing list