🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #267779

Re: Ciemna strona C++

#267779
From: Maciej Piechotka
Date: Wed, 21 Nov 2007 22:52
61 lines
3984 bytes
>> A co jeszcze ciekawsze, nie wszystkie wyjątki w Javie wymagają jawnej
>> obsługi. Czyli - ścisłe, ale nie do końca?
> 
> Może zarzucić jakimś krótkim kodem? Z tego co pamiętam to rzutowania na
> zły typ powodują paskudne skutki (NullPointerException).
> 

Wyrzuca ClassCastException.
NullPointerException to jak próbujesz wykonać metodę na NULL'u.

Generalnie struktura tego jest taka:

                       +-----------+
                       | Throwable |
                       +-----------+
                             ^^
                    /--------/\-----\
                   /                 \
              +-------+          +-----------+
              | Error |          | Exception |
              +-------+          +-----------+
                 ^                  ^      ^
               Wiele klas      Wiele klas  \
                                       +------------------+
                                       | RuntimeException |
                                       +------------------+
                                               ^
                                            Wiele klas
Wyrzucić można dowolne Throwable. Wyłapać można tylko Exception a 
'zignorować' (czyli nie wyłapywać i nie oznaczać metody, że wyrzuca 
wyjątki) można RuntimeException. Tak - logiczne ;)

Co ciekawę z tego co pamiętam Exception jest odpowiednikiem 
std::runtime_exception - ale głowy nie dam.
 
>> z pożywczego, czy bez, heisenbugi zdarzają się tak samo w C++, jak i w
>> Javie.
> 
> {Do Sebastiana}
> 
> A tak przyokazji według Wikipedii heisenbugi również są związane z "race
> conditions". Rozumiem, że np. w Lispie i Pythonie nie można zrobić "race
> condition", czy się mylę?
> 

Python chyba nie ale funkcje w Lispie teoretycznie nie mają efektów 
uboczych więc nie powinno być problemu (praktyka jest inna np. z I/O, ale 
w założeniach chyba nie ma race conditions). 

> Moim faworytem jest Logo to jest naprawdę bezpieczny język.
>

Nie wymawiaj tej nazwy. Musiałem się tego uczyć jak już znałęm C. 
Męczarnia - w dodatku IMHO zupełnie dla mnie nieprzydatna. Strasznie 
sprofanowany LISP.
 
Pozdrawiam
-- 
I've probably left my head... somewhere. Please wait untill I find it.
Homepage (pl_PL): http://uzytkownik.jogger.pl/
(GNU/)Linux User: #425935 (see http://counter.li.org/)
Technical Details
Message-ID: <bfpe15-u3p.ln1@router.piechotka.com.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.internetia.pl!nnrpd.internetia.pl
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl> <fgv6ba$k14$1@bozon2.softax.pl> <fgvkne$u3b$1@news.vectranet.pl> <fh1tjd$dtt$1@bozon2.softax.pl> <fh2lj6$qkh$1@news.vectranet.pl> <fha3as$pap$1@bozon2.softax.pl> <fhaj8u$e02$1@news.vectranet.pl> <fhf09d$ohq$1@bozon2.softax.pl> <fhfi9l$640$1@news.vectranet.pl> <fhurmu$5d9$1@bozon2.softax.pl> <fhv020$8k1$1@news.vectranet.pl> <fi1bs4$nn3$1@bozon2.softax.pl> <fi27ds$gt1$1@kujawiak.man.lodz.pl> <fi28vf$dfu$1@news.vectranet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.internetia.pl!nnrpd.internetia.pl
From: Maciej Piechotka <uzytkownik2@gmail.com>
Newsgroups: pl.comp.lang.c
Subject: Re: Ciemna strona C++
Date: Wed, 21 Nov 2007 23:52:59 +0100
Organization: Netia S.A.
Lines: 62
Message-ID: <bfpe15-u3p.ln1@router.piechotka.com.pl>
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl> <fgv6ba$k14$1@bozon2.softax.pl> <fgvkne$u3b$1@news.vectranet.pl> <fh1tjd$dtt$1@bozon2.softax.pl> <fh2lj6$qkh$1@news.vectranet.pl> <fha3as$pap$1@bozon2.softax.pl> <fhaj8u$e02$1@news.vectranet.pl> <fhf09d$ohq$1@bozon2.softax.pl> <fhfi9l$640$1@news.vectranet.pl> <fhurmu$5d9$1@bozon2.softax.pl> <fhv020$8k1$1@news.vectranet.pl> <fi1bs4$nn3$1@bozon2.softax.pl> <fi27ds$gt1$1@kujawiak.man.lodz.pl> <fi28vf$dfu$1@news.vectranet.pl>
NNTP-Posting-Host: 87-205-194-108.adsl.inetia.pl
Mime-Version: 1.0
X-Trace: mx1.internetia.pl 1195686870 8333 87.205.194.108 (21 Nov 2007 23:14:30 GMT)
X-Complaints-To: abuse@inetia.pl
NNTP-Posting-Date: Wed, 21 Nov 2007 23:14:30 +0000 (UTC)
X-Tech-Contact: usenet@internetia.pl
X-Orig-Path: router.piechotka.com.pl!news
User-Agent: Pan/0.132 (Waxed in Black)
X-Server-Info: http://www.internetia.pl/news/
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit