Srodne teme
25.06.2002. java
26.11.2014. Kolju knjigu?
26.08.2002. Dzava
18.10.2002. Pointers ...
19.12.2002. java.security.AccessControlException: access deni..
31.01.2003. java plugin
14.05.2003. Java SDK
01.06.2009. Java u linux-u
04.09.2003. POTREBAN JE JAVA PROGRAMER (J2ME)
17.11.2003. pocetnicko pitanje
Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pointeri i JAVA ili u JAVI :)

[es] :: Java :: Pointeri i JAVA ili u JAVI :)

Strane: 1 2 3 4 5

[ Pregleda: 15607 | Odgovora: 86 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Jcod3r
Serif Durakovic
Student
IUTA - DUT Informatique

Član broj: 46936
Poruke: 64
*.dsl.club-internet.fr.

Sajt: iuta.univ-lyon1.fr


Profil

icon Pointeri i JAVA ili u JAVI :)04.06.2008. u 20:43 - pre 161 meseci
Pozdrav !

Ovako, pricao sam sa profom jezika C i rekao mu da je profa algoritama rekao da u javi nema pointera, a on kaze da naprotiv u javi imaju samo pointeri, on konstruktore naziva pointerima npr Interger = new integer 5; ovo nam je naveo kao primjer pointera u javi ?

Sta kazu uceni :) ?
Jedno je sigurno, sve je nesigurno :)
 
Odgovor na temu

Jcod3r
Serif Durakovic
Student
IUTA - DUT Informatique

Član broj: 46936
Poruke: 64
*.dsl.club-internet.fr.

Sajt: iuta.univ-lyon1.fr


Profil

icon Re: Pointeri i JAVA ili u JAVI :)04.06.2008. u 20:59 - pre 161 meseci
I jos nesto, da ne govorim da je rekao za javu da nece za 5 godina ni postojati ccc....
Jedno je sigurno, sve je nesigurno :)
 
Odgovor na temu

grizzly
Beograd

Član broj: 7978
Poruke: 262



+4 Profil

icon Re: Pointeri i JAVA ili u JAVI :)04.06.2008. u 21:14 - pre 161 meseci
Jesi li ti siguran da znas francuski? :)
 
Odgovor na temu

Jcod3r
Serif Durakovic
Student
IUTA - DUT Informatique

Član broj: 46936
Poruke: 64
*.dsl.club-internet.fr.

Sajt: iuta.univ-lyon1.fr


Profil

icon Re: Pointeri i JAVA ili u JAVI :)04.06.2008. u 21:58 - pre 161 meseci
Ha ha ha jok eto ne znam :)
Tip ima oko 60-65 god. izgleda prohlupo ali stvarno kazem da sam pricao sa njim i tako biser kaze... :) ustvari rekao je ako promjenimo ime BUS u TRAMVAJ to nista neznaci nego samo IME se promjenilo :) i da nemozemo napraviti pointer *nesto = nesto; ali sve se prevodi pointerima u JVM, eh tu sam stao i rekao nije problem raspitacu se...

Ma nije francuski tezak nego maras puno rukama mahat' :) ha ha ha

Jedno je sigurno, sve je nesigurno :)
 
Odgovor na temu

Jcod3r
Serif Durakovic
Student
IUTA - DUT Informatique

Član broj: 46936
Poruke: 64
*.dsl.club-internet.fr.

Sajt: iuta.univ-lyon1.fr


Profil

icon Re: Pointeri i JAVA ili u JAVI :)04.06.2008. u 22:30 - pre 161 meseci
Why dont you use pointers in Java?
In: JAVA

Answer
You do not use pointers in Java because the language designers decided to abstract memory management to a higher level in Java than in C. The reason for this is that it is easy to make mistakes using pointers and other lower level memory management techniques. These mistakes can lead to bugs. hard to read code, memory leaks that waste system resources, and security issues. Instead for the most part Java takes care of memory management for the user who can instead specify behavior though the object oriented techniques that are safer and easier to understand. The downside is that the programmers lose some control and flexibility in using memory. Also, programs using Java take a small performance hit in some cases because of the extra work Java has to do to manage memory itself.





Answer

They are, however in Java they are called references.


Eh sad se i tema moze izbrisati lagano :)
Jedno je sigurno, sve je nesigurno :)
 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
*.cable.casema.nl.

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)04.06.2008. u 22:57 - pre 161 meseci
Profa te nije lagao. Interno JVM stvarno barata pointerima. NekaKlasa obj = new NekaKlasa() jeste primer pointera u Javi.

Koristan link (izguglano na brzinu): http://www.saxoft.com/get.php?page=midptut0

Citat:

Java is based on the C and C++ syntax, so those of you familiar with these languages will have no problems learning it. The major difference is in Java there are no pointers. They designed it such ways, so it would be easier for coders to use it. The truth is, instead almost everything is a pointer, you just cannot see it. I said almost everything, the exceptions are the basic types


[Ovu poruku je menjao franticnick dana 05.06.2008. u 00:14 GMT+1]
 
Odgovor na temu

ilderim
Stanojevic Dalibor
Leskovac

Član broj: 115017
Poruke: 8
*.ptt.yu.



+2 Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 12:37 - pre 161 meseci
Vidi sa programerske tacke , Java nema pointere,to kako JVM interno barata pod Windows okruzenjem to je drugo,jer svaka VM ima odgovarajuci native kod kojim korespondira sa resursima,bilo na Win,Linux,Unix,Solaris ili Mac OS,ali kao programer treba da znas da nema pointera u Javi,kao u C++ ili kao delegate u C#

Programer
 
Odgovor na temu

Java Beograd
Novi Beograd

Član broj: 11890
Poruke: 8594
212.200.68.*



+9845 Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 13:37 - pre 161 meseci
Pa i jeste i nije. Isto tako se može reći da sa programerske tačke gledišta, u Javi su sve promenljive - pointeri. (Osim primitiva).

Bilo kako bilo, pogrešno je terminologiju programskog jezika C koristiti u programskom jezuku Java. Otud i nedefinisanosti, nedorečivosti i višeznačnosti.
Ljudi koji su skloni teorijama zavere osećaju se posebno, jer sebe vide kao nekoga ko je bolje informisan od drugih o važnim društvenim i političkim događajima. Zbog ovih razloga teoretičari zavere su često i narcisoidni.
 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
*.anonymizer.ccc.de.

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 13:52 - pre 161 meseci
Citat:
Java Beograd:
Bilo kako bilo, pogrešno je terminologiju programskog jezika C koristiti u programskom jezuku Java. Otud i nedefinisanosti, nedorečivosti i višeznačnosti.


Slazem se. Medjutim ako se ipak zeli upotrebiti terminologija C/C++ (u nedostatku bolje), onda ipak vise lezi naziv "pointer" nego "referenca".
 
Odgovor na temu

Java Beograd
Novi Beograd

Član broj: 11890
Poruke: 8594
212.200.68.*



+9845 Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 14:16 - pre 161 meseci
Nikako. Termin "pointer" je mnogo, mnogo lošiji od termina "referenca".
Ljudi koji su skloni teorijama zavere osećaju se posebno, jer sebe vide kao nekoga ko je bolje informisan od drugih o važnim društvenim i političkim događajima. Zbog ovih razloga teoretičari zavere su često i narcisoidni.
 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
89.248.169.*

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 15:05 - pre 161 meseci
Citat:
Java Beograd: Nikako. Termin "pointer" je mnogo, mnogo lošiji od termina "referenca".


Ne bih se slozio. Ako pogledas sta su reference u C/C++ one nemaju nikakve veze sa Javom, dok pointeri jos nekako i lice.
 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
*.nedstat.nl.

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 15:19 - pre 161 meseci
Ok, malo sam proguglao. Izgleda da se odomacio izraz "reference value" za ono sto imamo u Javi. Mada kao sto rekoh taj naziv "referance" nema nikakve veze sa referencama u C/C++.

Evo sta kaze JLS (The Java Language Specification)

Citat:

4.3.1 Objects
An object is a class instance or an array.

The reference values (often just references) are pointers to these objects, and a special null reference, which refers to no object.


link: http://java.sun.com/docs/books...on/html/typesValues.html#4.3.1

BTW jos nisam dobio "null reference exception" i dalje je "null pointer exception" :)

[Ovu poruku je menjao franticnick dana 05.06.2008. u 17:35 GMT+1]
 
Odgovor na temu

Jcod3r
Serif Durakovic
Student
IUTA - DUT Informatique

Član broj: 46936
Poruke: 64
*.dsl.club-internet.fr.

Sajt: iuta.univ-lyon1.fr


Profil

icon Re: Pointeri i JAVA ili u JAVI :)05.06.2008. u 22:54 - pre 161 meseci
Ok, hvala na pojasnjenjima :)
Jedno je sigurno, sve je nesigurno :)
 
Odgovor na temu

aleksandar.dragojlovic
Aleksandar Dragojlović
Kraljevo

Član broj: 142052
Poruke: 100
*.dynamic.sbb.rs.



Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 01:26 - pre 161 meseci
Preuzeto sa: http://en.wikipedia.org/wiki/Java_(programming_language) .

Citat:

Java does not support pointer arithmetic as is supported in, for example, C++. This is because the garbage collector may relocate referenced objects, invalidating such pointers. Another reason that Java forbids this is that type safety and security can no longer be guaranteed if arbitrary manipulation of pointers is allowed.


I ono što smo mi učili na fakultetu: zbog bezbednosti Java ne podržava pointere. Znači u pozadini JVM naravno mora raditi sa pointerima, ali niti programer niti korisnik ne mogu to videti niti mogu u programima koristiti pointere. Zamislite sajt koji učitava aplet (tipa onog chat-a na krstarici), i slobodno vršlja po celom disku jer je Java dopustila da autor tog apleta može da radi šta hoće. Nedostatak pokazivača je i mana i prednost, zavisi sa koje se strane posmatra.

Kao što kaže gore, promenljiva može da bude referenca na neki objekat, ali ne i pokazivač. Taj objekat u radu može da bude pomeren na neku drugu lokaciju usled manjka prostora u memoriji ili sličnih problema. Takođe reference se koriste pri "sakupljanju smeća".

Mislim nisam ja pametan više nego drugi, i ne znam više od vas, ali na samom početku bilo koje knjige o Javi se govori o razlici između C-a i Jave, i uvek se kao glavna razlika navodi nedostatak pointera.

Dakle kako JVM radi u pozadini nije bitno za korisnika, bitno je da kada programer piše program u Javi on ne koristi direktno pokazivače već radi sa referencama na objekte.
 
Odgovor na temu

Java Beograd
Novi Beograd

Član broj: 11890
Poruke: 8594
212.200.68.*



+9845 Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 07:27 - pre 161 meseci
Citat:
franticnick: Ne bih se slozio. Ako pogledas sta su reference u C/C++ one nemaju nikakve veze sa Javom, dok pointeri jos nekako i lice.

Pa upravo sam to i napisao. Pogrešno je koristiti terminologiju C/C++ u Javi.

Ako napišem

MyClass myClass = new MyClass();
foo.doSomething(myClass);

Ja nisam predao POINTER na myClass već sam predao REFERENCU na myClass.
Ljudi koji su skloni teorijama zavere osećaju se posebno, jer sebe vide kao nekoga ko je bolje informisan od drugih o važnim društvenim i političkim događajima. Zbog ovih razloga teoretičari zavere su često i narcisoidni.
 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
*.nedstat.nl.

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 11:15 - pre 161 meseci
Code:

MyClass myClass = new MyClass();
foo.doSomething(myClass);

Ja nisam predao POINTER na myClass već sam predao REFERENCU na myClass.


Mozes da je nazivas REFERENCA ili kako god volis, ali cinjenica je da si predao najobicniji pointer na objekat.

I samo da napomenem da pointer kao termin nije vezan ni za jedan programski jezik (pa ni za C++). Dakle, citiram ponovo Java Language Specification:

Citat:

4.3.1 Objects
An object is a class instance or an array.

The reference values (often just references) ARE POINTERS to these objects, and a special null reference, which refers to no object.


 
Odgovor na temu

Java Beograd
Novi Beograd

Član broj: 11890
Poruke: 8594
212.200.68.*



+9845 Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 11:34 - pre 161 meseci
Ajde da vidimo o čemu se priča. Engleska reč, glagol, to point prevedno na srpski znači pokazati. Izvedena imenica, pointer znači pokazivač. Engleska reč reference, u kontekstu o kome pričamo znači veza.

Dakle, poenta je u tome da se ne barata vrednostima, nego vrednosti stoje u memoriji, a funkcijama se predaju samo "veze do mesta u memoriji" odnosno "pokazivači do mesta u memoriji". To je potpuno isto.

Činjenica je da u C programskom jeziku može funkciji da se preda i vrednost, i pokazivač na memorijsku lokaciju vrednosti. pa postoji problematika o kojoj se uči i diskutuje: kad i kako predati vrednost a kad i kako predati pointer. Pointeri se na poseban način imenuju, na poseban način se njima barata i td. Dakle to su POINTERI.

U Javi je drugačije. Nema prenošenja vrednosti, nema posebnog načina označavanja posebnih promenljivih koje u sebi nose oznaku memorijske lokacije. Dakle, nema te problematike, nema tih i takvih POINTERA. Ima REFERENCI na objekte, smeštene negde u memoriji. Jeste isto, ali i nije. Drugačija je problematika pa je drugačija i terminologija.

Zamajac u motoru jeste zupčanik, ali ga niko ne zove zupčanikom, zato što je zamajac.

Ljudi koji su skloni teorijama zavere osećaju se posebno, jer sebe vide kao nekoga ko je bolje informisan od drugih o važnim društvenim i političkim događajima. Zbog ovih razloga teoretičari zavere su često i narcisoidni.
 
Odgovor na temu

augustus
Novi Sad - Beograd

Član broj: 101581
Poruke: 358
*.com
Via: [es] mailing liste



+46 Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 11:43 - pre 161 meseci
Mozda reci da u javi nema aritmetike sa pokazivacima. Citaj vrednosti sa
lokacija na koje pokazuju i to je sve.
"Čovek je biće koje se na sve navikava, i ja mislim da je ovo njegova najbolja definicija."
Fjodor M. Dostojevski
 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
*.nedstat.nl.

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 12:07 - pre 161 meseci
Citat:
Java Beograd

Činjenica je da u C programskom jeziku može funkciji da se preda i vrednost, i pokazivač na memorijsku lokaciju vrednosti. pa postoji problematika o kojoj se uči i diskutuje: kad i kako predati vrednost a kad i kako predati pointer. Pointeri se na poseban način imenuju, na poseban način se njima barata i td. Dakle to su POINTERI.

U Javi je drugačije. Nema prenošenja vrednosti, nema posebnog načina označavanja posebnih promenljivih koje u sebi nose oznaku memorijske lokacije...


Hej, polako. U javi se upravo SVE PRENOSI PO VREDNOSTI. Tako recimo sledeci kod predaje funkciji pointer (ili ako bas hoces referencu) PO VREDNOSTI:

Code:

public class Main
{
    static public void main(String ... args)
    {
        Integer a = new Integer(5);
        System.out.println("before: " + a);
        change(a);
        System.out.println("after: " + a);
    }
    
    static void change(Integer b)
    {
        b = new Integer(10);
    }
}


pa je rezultat 5, a ne 10.


 
Odgovor na temu

franticnick

Član broj: 19656
Poruke: 372
*.nedstat.nl.

Sajt: www.franticnick.com


+30 Profil

icon Re: Pointeri i JAVA ili u JAVI :)06.06.2008. u 12:10 - pre 161 meseci
Citat:
augustus: Mozda reci da u javi nema aritmetike sa pokazivacima. Citaj vrednosti sa
lokacija na koje pokazuju i to je sve.


Upravo.
 
Odgovor na temu

[es] :: Java :: Pointeri i JAVA ili u JAVI :)

Strane: 1 2 3 4 5

[ Pregleda: 15607 | Odgovora: 86 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.