But output is "good" . Why is scope of sName considered local to method, when its static and there is no other declaration of sName string in any other method ? So without declaration of sName in nameTest(), how come sName is not pointing to new String object "good idea"
2) Will start() execute run() or not. If start() executes run(), then sNmae should become "good idea 0 1 2 3" after execution of run(). Otherwise sName should have value of "good idea". So, if Thread.start() is not used, does run() get executed ?