🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.objects
Article #4619

Re: Referencje (Re: Prawda o C++)

#4619
From: Sektor van Skijlen
Date: Thu, 21 Jan 1999 20:50
59 lines
3272 bytes
In pl.comp.objects Marcin 'Qrczak' Kowalczyk <qrczak@knm.org.pl> wrote:
: Dysklejmer: Nie znam Javy, mam tylko szczątkowe informacje o niej.

To moze bardziej Ci sie rozjasni, jak napisze pare niezbyt przyjemnych rzeczy
nt. tego jezyka.

Przede wszystkim, w Javie typy WBUDOWANE sa to WYLACZNIE normalne typy, zas
typy deifniowane przez uzytkownika (no, powiedzmy, ze uzytkownika :*), czyli
klasy, to sa WYLACZNIE referencje.  To oznacza, ze o ile

	int a;
	long c;

deklaruja juz gotowy obiekt, o tyle

	cint a;
	elong c;

deklaruja jedynie niezainicjalizowane referencje. Tym referencjom mozemy
przypisac dopiero nowo stworzone obiekty:

	a = new cint;
	c = new elong;

(Oczywiscie najczesciej od razu sie je inicjalizuje :*)

Podobnie, nie mozna w Javie napisac:

int c[3][5];

a jedynie:

int [][] c = new int [3][5];

Referencje w Javie zachowuja sie identycznie, jak wskazniki w C++; z tym
tylko, ze nie mozna znac ich wartosci; zna je jedynie interpreter, ktory ten
program wykonuje.

Jaki jest tego skutek ?

1. Przypisanie nie jest mozliwe pomiedzy obiektami, ani tablicami.
2. Przypisanie referencji nie rozni sie skladniowo od przypisania miedzy
obiektami typow wbudowanych (choc jest to ZASADNICZO inny rodzaj przypisania).
3. Co za tym wszystkim idzie - nie jest mozliwe stworzenie typow danych
rozszerzajacych wlasciwosci typow wbudowanych. Jesli chce sie korzystac z
typow liczbowych, to wylacznie takich, jakie zaproponowali tworcy jezyka
(czyli tak, jak w C).
4. Lista, ktora kolega zaproponowal jest conajmniej malo uniwersalna.
5. Lista owa jest wrecz smiesznie prymitywna - niczego, poza przechodzenie na
nastepny element ona nie oferuje. Widzialem to samo napisane w jezyku C (kazda
struktura miala dodane pole 'next'). Jezyk niby obiektowy, a w zakresie
struktur danych nie oferuje wiecej, niz zwykly C. A wydawaloby sie, ze
podstawa klasy jest struktura :*)

-- 
                        -=* P O Z D R A W I A M ! *=-
    [-=* Ij waiet salden mijn spijr, ta faenen aire ats trauven diaenna *=-]
     ____....----````Sektor van Skijlen: sektor at beer.com''''----....____
                                         <sPAm  @  pROtEctIOn>
Technical Details
Message-ID: <7883to$8m0$1@polonez.man.lodz.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.nask.pl!news.icm.edu.pl!news.man.poznan.pl!news.man.lodz.pl!not-for-mail
References: <36a27542.0@news3.ibm.net> <77upi3$saj$1@zeus.polsl.gliwice.pl> <Pine.LNX.4.05.9901181049150.351-100000@qrnik.knm.org.pl> <36A34000.764E7B8@interdata.com.pl> <77vjok$7aj$1@h1.uw.edu.pl> <36A361A1.69764717@interdata.com.pl> <Pine.LNX.4.05.9901182130180.542-100000@qrnik.knm.org.pl> <36a3cad2.0@news3.ibm.net> <Pine.LNX.4.05.9901210833580.9316-100000@qrnik.knm.org.pl> <36A74714.C3A7DA39@interdata.com.pl> <Pine.LNX.4.05.9901211903120.426-100000@qrnik.knm.org.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.nask.pl!news.icm.edu.pl!news.man.poznan.pl!news.man.lodz.pl!not-for-mail
From: Sektor van Skijlen <sektor@spam.org>
Newsgroups: pl.comp.programming,pl.comp.objects
Subject: Re: Referencje (Re: Prawda o C++)
Date: 21 Jan 1999 20:50:00 GMT
Lines: 59
Message-ID: <7883to$8m0$1@polonez.man.lodz.pl>
References: <36a27542.0@news3.ibm.net>   <77upi3$saj$1@zeus.polsl.gliwice.pl> <Pine.LNX.4.05.9901181049150.351-100000@qrnik.knm.org.pl> <36A34000.764E7B8@interdata.com.pl> <77vjok$7aj$1@h1.uw.edu.pl> <36A361A1.69764717@interdata.com.pl> <Pine.LNX.4.05.9901182130180.542-100000@qrnik.knm.org.pl> <36a3cad2.0@news3.ibm.net> <Pine.LNX.4.05.9901210833580.9316-100000@qrnik.knm.org.pl> <36A74714.C3A7DA39@interdata.com.pl> <Pine.LNX.4.05.9901211903120.426-100000@qrnik.knm.org.pl>
NNTP-Posting-Host: zly.kis.p.lodz.pl
Mime-Version: 1.0
User-Agent: tin/pre-1.4-981225 ("Volcane") (UNIX) (SunOS/5.5.1 (i86pc))
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit