-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Martin,
Wow. More drivel. SS and DS? I see you're familiar with x86 assembly. I weep for you, Martin. Martin Gainty wrote: > This is one of those SS!=DS discussions which means that variables > placed/alloc'ed on the stack are NOT the same as variables alloc'ed > from heap so when using a variable which is alloced on the stack > AND initialised to some known value (null) feel free to test that > pre-allocated stack variable as with if(stack_variable == null) Where to begin.... In Java, all reference types (which includes all object types as well as arrays) are allocated on the heap. All. All all all. All /references/ (those are the names that you give to them in your functions, like "foo" are allocated on the stack. All. All all all. Non reference types (also called primitives) may never have a null value in Java. Never never never. If a reference is equal to null, and you try to dereference it, you will get a NPE. The solution is simple: do not dereference null references. Duh! > If you dont know how this variable is alloc'ed or you know that the > variable is alloc'ed from heap use try / catch(NullPointerException > npe) The variable is always a reference variable because we're talking about nulls. Reference types always go on the heap, therefore you are getting heap allocation. The reference itself is always local, on the stack. Catching NPE is just sloppy coding. > to do otherwise you're risking your webapp causing 'an unhandled > exception' when referencing a unalloc'ed variable.. There is no such operation as "referencing" a variable. Simply mentioning a variable name in an expression (even if it is null) is not enough to throw an NPE. You have to dereference it. The definition of "dereference" is an exercise left to the reader, if his eyes haven't bled so much he can no longer see, which is about where I am. Let's kill this thread. Dead thread dead. - -chris -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFW67q9CaO5/Lv0PARAi1tAJ4xqphcj0AdwpjFV8lj/RVnXpphhACfes+x alSUKSwZFLIiMOL/9sDNNZU= =7ZZy -----END PGP SIGNATURE----- --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]