<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word"><head><META content="text/html; charset=utf-8" http-equiv="Content-Type">

<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta content="Microsoft Word 12 (filtered medium)" name="Generator">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head><BODY>
<DIV>
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Sziasztok!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Szabin voltam, de talán még nem késő...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Olvastam már én is több helyen, hogy null pedig ne legyen a visszatérő érték, és kicsit sem tudtam elfogadni az érvelést egyszer sem.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">NPE-t okozhat? Az csak azt jelenti, hogy rosszul használod. Hiszen a metódusnak van doksija ugye, amiben benne van hogy null is lehet visszatérő érték. Különösen
 a null visszatérő érték esetén legyen ilyen a doksiban, ha más nem, akkor a „@return beware: might be null!” (haladók tegyék hozzá az okot is, ami a null visszatérő értéket okozhatja) &nbsp;legyen ott a doksiban... :)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Különösen azon metódusok esetén, amelyek valamiben keresnek valamit, a null nagyon jó és természetes visszatérő érték, jelentése pedig „nincs ilyen”. Ez sokkal
 kulturáltabb, mint a kivételkezelés.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Olyat is olvastam egyszer valahol, hogy ne térjünk vissza null értékkel, helyette dobjunk runtime exception-t, mert azt nem kell elfogni. Na ez már a teljes
 hülyeség csimborasszója szerintem... Márpedig az illegal parameter és más hasonlók is a runtime exception népes családjába tartoznak. Ebből az következik, hogy dokumentálni pont ugyanúgy kell, mintha leírnád a fenti hosszú szöveget :), és a figyelmetlen használó
 pont ugyanolyan érdekes kivételt kapna, mint az NPE, csak másként hívnák.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Persze akkor, ha több ok is bekövetkezhet, ami miatt a metódus nem tud visszaadni „jó” értéket, akkor a null sokszor nem elég informatív. Ilyenkor valóban lehet
 értelme a kivételnek (akár a runtime kivételnek is). De ha pontosan egy oka lehet a null értéknek, akkor szerintem legális és elfogadott vele visszatérni.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Üdvözlettel,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Iván<o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span style="font-size:9.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">István Ketler<br>
</span></b><span style="font-size:9.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">Senior Consultant</span><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">Lufthansa Systems Hungaria Kft.
<br>
Development Center Pest <br>
Neumann János u. 1/e<br>
1117 Budapest<br>
Hungary <o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">Tel: &#43;36 1 887-2815
<br>
Fax: &#43;36 1 887-2977<br>
Mobile: &#43;36 30 600-4936 </span><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">Room: Infopark E, Room LH2-24
</span><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">e-mail:
</span><a href="mailto:istvan.ketler@lhsystems.com"><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">istvan.ketler@lhsystems.com</span></a><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#999999">
<br>
Internet: </span><a href="http://www.lhsystems.hu/"><span style="font-size:8.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">www.LHsystems.hu</span></a><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
</div></DIV>
<DIV>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt">&nbsp;</P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"><SPAN STYLE="FONT-SIZE: 8pt; COLOR: gray; FONT-FAMILY: Arial">Sitz der Gesellschaft / Corporate Headquarters: </SPAN><SPAN LANG="EN-GB" STYLE="FONT-SIZE: 8pt; COLOR: gray; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Lufthansa Systems Hungaria Kft, Budapest, Fövarosi Birosag 01-09-463417<BR></SPAN><SPAN STYLE="FONT-SIZE: 8pt; COLOR: gray; FONT-FAMILY: Arial">Geschaeftsfuehrung / Management Board: Monika Houck</SPAN></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"><BR></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"><div class="WordSection1"><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">
<a href="mailto:javalist-bounces@lists.javaforum.hu">javalist-bounces@lists.javaforum.hu</a> [<a href="mailto:javalist-bounces@lists.javaforum.hu">mailto:javalist-bounces@lists.javaforum.hu</a>]
<b>On Behalf Of </b><a href="mailto:gzsombor@gmail.com">gzsombor@gmail.com</a><br>
<b>Sent:</b> Tuesday, July 24, 2012 1:28 PM<br>
<b>To:</b> Java lista<br>
<b>Subject:</b> Re: [Javalist] Segítség! Java7 compiler BUG???<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<p class="MsoNormal">Egy idő után fájna, szerintem. Nem beszélve arról az esetről, hogy mi történjen, ha a key létezik, de a value null :)<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
On Tue Jul 24 13:20:45 GMT&#43;200 2012, Böszörményi Péter &lt;<a href="mailto:zmblevlist@gmail.com">zmblevlist@gmail.com</a>&gt;. wrote:<o:p></o:p></p>
<p class="MsoNormal">Imadnek hasznalni egy Map-et, ami hibat dobna, ha nem letezo kulcsra hivatkoznek.
<br>
<br>
On Tue, 24 Jul 2012 13:17:42 &#43;0200, Gábor Garami &lt;<a href="mailto:gabor.garami@hron.me">gabor.garami@hron.me</a>&gt; wrote:
<br>
<br>
&gt; En nem szeretek null-t visszaadni, mert abbol szeret NPE keletkezni - <br>
&gt; es mindig ott, ahol vegkepp nem szamitok ra. Halalosan gyulolom a <br>
&gt; semmihez se kotheto hibakat. <br>
&gt; <br>
&gt; Akkor mar valami ures objektum. <br>
&gt; <br>
&gt; Garami Gábor <br>
&gt; E-mail: <a href="mailto:gabor.garami@hron.me">gabor.garami@hron.me</a> <br>
&gt; Tel: &#43;36 20 235 9621 <br>
&gt; MSN: <a href="mailto:hrgy@vipmail.hu">hrgy@vipmail.hu</a> <br>
&gt; Skype: hron84 <br>
&gt; <br>
&gt; <br>
&gt; 2012/7/24 Suller Andras &lt;<a href="mailto:suller.andras@gmail.com">suller.andras@gmail.com</a>&gt;:
<br>
&gt;&gt; 2012/7/23 Viczián István &lt;<a href="mailto:viczian.istvan@gmail.com">viczian.istvan@gmail.com</a>&gt;:
<br>
&gt;&gt;&gt; Üdv, <br>
&gt;&gt;&gt; <br>
&gt;&gt;&gt; Egy okos könyvben olvastam erre egy alternatívát, amelyik <br>
&gt;&gt;&gt; kijelentette, hogy nem jó a return null, mint vezérlő érték, ugyanúgy, <br>
&gt;&gt;&gt; ahogy ne adj vissza státuszkódot sem. Ehelyett egyrészt Exception-t <br>
&gt;&gt;&gt; javasol, amit meg én nem szeretek, mert én az Exception-t mint <br>
&gt;&gt;&gt; kivételes eseményt értelmezek, és az, hogy egy ellenőrzés elbukik, az <br>
&gt;&gt;&gt; nem mindig kivételes esemény. <br>
&gt;&gt;&gt; Ehelyett van egy olyan megoldás, hogy két szép metódust deklarálsz, és <br>
&gt;&gt;&gt; úgy hívod, mert olvashatóbb a hívás helyén. <br>
&gt;&gt;&gt; <br>
&gt;&gt;&gt; if (parameterekHibatlanok()) { <br>
&gt;&gt;&gt; csinaldMeg(); <br>
&gt;&gt;&gt; } <br>
&gt;&gt; <br>
&gt;&gt; Ez akkor alternativa a Peter altal felvetett dologra, ha nem kell <br>
&gt;&gt; visszaadni semmit. Kulonben az else agban muszaj valamit return-olni, <br>
&gt;&gt; vagy kivetelt dobni. <br>
&gt;&gt; <br>
&gt;&gt; Egyebkent szerintem az lehet helyes, ha valami metodus null-t ad <br>
&gt;&gt; vissza. Neha en is szoktam alkalmazni. <br>
&gt;&gt; <br>
&gt;&gt; Andras <br>
&gt;&gt; _______________________________________________ <br>
&gt;&gt; Javalist mailing list <br>
&gt;&gt; <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a> <br>
&gt;&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist">http://lists.javaforum.hu/mailman/listinfo/javalist</a>
<br>
&gt; _______________________________________________ <br>
&gt; Javalist mailing list <br>
&gt; <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a> <br>
&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist">http://lists.javaforum.hu/mailman/listinfo/javalist</a>
<br>
&gt; <br>
<br>
<br>
-- <br>
Üdvözlettel, <br>
Böszörményi Péter <br>
_______________________________________________ <br>
Javalist mailing list <br>
<a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a> <br>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist">http://lists.javaforum.hu/mailman/listinfo/javalist</a>
<o:p></o:p></p>
</div>
</P></DIV></BODY></HTML>