Feedback and comments on ARM proposal (original) (raw)
Neal Gafter neal at gafter.com
Tue Mar 17 22:43:40 PDT 2009
- Previous message: Feedback and comments on ARM proposal - resend
- Next message: Feedback and comments on ARM proposal - resend
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Tue, Mar 17, 2009 at 9:50 PM, Howard Lovatt <howard.lovatt at iee.org> wrote:
Agreed, though there is one context in which it is possible to jump into the scope of a local variable declaration without "executing" the declaration: the switch statement. I thought this was only in C/C++ and Java had plugged this hole - I guess I am wrong - do you have an example.
Below, in the form of a puzzler. What does the program print? If you remove "final", does the answer change?
import java.io.*; class T { public static void main(String[] args) { switch (args.length) { case 0: final int i = 0; // a constant variable break; case 1: i = 1; // i is not definitely assigned here, so we assign to it System.out.println(i); // i is constant, so prints 0? 1? break; } } }
- Previous message: Feedback and comments on ARM proposal - resend
- Next message: Feedback and comments on ARM proposal - resend
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]