Path: csiph.com!usenet.pasdenom.info!gegeweb.org!eternal-september.org!feeder.eternal-september.org!mx04.eternal-september.org!.POSTED!not-for-mail From: markspace <-@.> Newsgroups: comp.lang.java.programmer Subject: Re: throw null investigation Date: Wed, 18 Jul 2012 13:35:46 -0700 Organization: A noiseless patient Spider Lines: 27 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Wed, 18 Jul 2012 20:35:49 +0000 (UTC) Injection-Info: mx04.eternal-september.org; posting-host="61282af8d6595e8d991edb5ac03d6e00"; logging-data="26015"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+z5BnY5AYAwJkqnghuMWu+IRWyQzF7r5E=" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20120713 Thunderbird/14.0 In-Reply-To: Cancel-Lock: sha1:SzJHEr2nxdS52HBGKwTfXv9ovds= Xref: csiph.com comp.lang.java.programmer:16084 On 7/18/2012 12:39 PM, Daniel Pitts wrote: > On 7/18/12 10:10 AM, bob smith wrote: >> Is it common practice to throw a null exception when writing JNI code? >> >> I'm seeing an exception that is simply a null rather than an object, >> and I'm wondering if it's because it's easier to do that in JNI. >> > From what I can tell, that shouldn't ever happen. I'm not sure in JNI, > but I know in Java if you throw a "null", it will instead throw a > NullPointerException, so anyone catching that Throwable will not see a > "null" value, but instead a NullPointerException instance. > In Java, yes. But in JNI, in C, I'd expect it is possible to literally throw an empty or null pointer. I'd also expect that any code that did that was sub-par, and not worth using or debugging. I'm mildly interested in what the OP is using, mostly so I can avoid it. However if he can supply some details (*what* are you using, Bob?) I'd consider taking a loot at it. The actually question he asks: "Is it common practice," I don't really know or care. It seems bad practice, but I've never dealt with JNI code, so what do I know?