KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
So I was looking through some of the new features of java 7, including the try-with-resources bit. I understand how it works and everything, I just noticed that the syntax used to specify the resources is a little odd. try (InputStream fis = new FileInputStream(source); OutputStream fos = new FileOutputStream(target)) { // stuff } } catch (Exception e) { // stuff } Specifically the definition of resources: try (InputStream fis = new FileInputStream(source); OutputStream fos = new FileOutputStream(target)) Is there any other place in java where separating statements within a parenthesis block is valid? The only other time I can think of is a for loop for ( ; ; ) but that's not quite the same since there has to be exactly 2 ; s, and statements are separated with a , as in for (int i = 1, j = 100; i <= 100, j > 0; i = i-1, j = j-1) So my question is, where did this syntax come from? Is there a reason the statements are ; delimited instead of , delimited? Is there even another comparable language that has a similar use of ; separated statements inside of a () block? I can't think of an example in java, C, or python.
Tags (comma-separated)
Save Edits
Cancel