Elektrotehnicki fakultet, Beograd  Laslo Kraus

Programski jezik Java sa rešenim zadacima

Ispravke uz prvo izdanje


Mesto Pogrešno Ispravno
strana: 7
red: ↑21
jeophodno je neophodno
strana: 7
red: ↑18
rukuje isključivo I. rukuje isključivo JVM.
strana: 9
red: ↑12
Za detalje videti poglavlje 6. Za detalje videti §2.10 (▤26).
strana: 18
red: ↑10
-fe.8p0 -0Xfe.8p0
strana: 19
red: ↑20
'\012' '+' '3' '\012'
strana: 21
red: ↑11
float kugla = 12.34; float kugla = 12.34f;
strana: 25
red: ↓4
realnih brojeva tačnosti. realnih brojeva.
strana: 28
red: ↓18
U ovom slučaju, prvim pozivom metode print samo se sažeto ispiše a,b? da bi korisnik znao da treba da unese dva podatka. U ovom slučaju, prvim pozivom metode print ispiše se zahtev korisniku da unese dva cela broja.
strana: 28
red: ↑10
Drugim pozivom metode print u programu 2.2 ispisuje se uvodni tekst a+b= pre vrednosti samog rezultata. Drugim pozivom metode print u programu 2.2 ispisuje se uvodni tekst koji kazuje šta predstavlja podatak čije ispisivanje tek sledi.
strana: 35
red: ↑23
Prefiksne varijante ovih operatora su prioriteta 13 i grupišu se sleva nadesno. Postfiksne varijante su prioriteta 14 i grupišu se zdesna nalevo. Prefiksne varijante ovih operatora su prioriteta 13 i grupišu se zdesna nalevo. Postfiksne varijante su prioriteta 14 i grupišu se sleva nadesno.
strana: 36
red: ↑22
// y = ((a * x) + c) // y = ((a * x) + b)
strana: 36
red: ↑15
c=(d−3), u=b, b=b+1, a=u+(3*c) u=b, b=b+1, c=(d−3), a=u+(3*c)
strana: 37
red: ↑15
promeni vrednost postavljanja vrednosti promeni vrednost posle postavljanja vrednosti
strana: 39
red: ↓14
logx+1, x>0 log1+x, x>−1
strana: 39
red: ↓19
cqrt cbrt
strana: 40
red: ↑15
U ovom slučaju se primenjuje unapređenje tipa. U ovom slučaju se ne primenjuje unapređenje tipa levog operanda.
strana: 42
red: ↓21
sva četiri operatora sva četiri operanda
strana: 43
red: ↑15
Binarni operator << pomera vrednost levog operanda nadesno, operatori >> i >>> za onoliko Binarni operator << pomera vrednost levog operanda nalevo, operatori >> i >>> nadesno za onoliko
strana: 43
red: ↑7 i 5
a operatorom >>= a operatorom >>>
strana: 44
red: ↓18
Šesti i sedmi izraz, na slučaju logičke i operacije, prikazuju razliku između logičkih operatora po bitovima i logičkih operatora. << Celu rečenicu treba izbaciti. >>
strana: 52
red: ↑11
"\tArg=%" "\tArg="
strana: 54
red: ↓5
// GREŠKA: h još ne postoji. // GREŠKA: h, i i j još ne postoje.
strana: 58
red: ↓21
Vrednosti su celobrojne konstante i svaka konstanta Vrednosti su konstante istog tipa kao i izraz i svaka konstanta
strana: 60
red: ↓3
while (i < n) {
  s += i * i;
  i++;
}
s = 0; i = 1; while (i < n) { s += i * i; i++; }
s = 0; i = 1; while (i < n) s += i * i++;
while (i <= n) {
  s += i * i;
  i++;
}
s = 0; i = 1; while (i <= n) { s += i * i; i++; }
s = 0; i = 1; while (i <= n) s += i * i++;
strana: 61
red: ↓8
prelazi se na sledeći, a ako prelazi se na sledeći korak, a ako
strana: 62
red: ↓14
Kod ciklusa s izlazom na vrhu Kod ciklusa s izlazom na dnu
strana: 62
red: ↑12
prirodnih naredbom while prirodnih brojeva naredbom do
strana: 63
red: ↓12
Opšti oblik složene naredbe je: Opšti oblik označene naredbe je:
strana: 63
red: ↑14 i 13
Iskakanje iz upravljačke strukture Iskakanje iz označene naredbe
strana: 65
red: ↑8
duzina = 28 + ( ); break; duzina = ( ) ? 29 : 28; break;
strana: 66
red: ↓1
Zanimljiv je način određivanja broja dana u februaru (case 2:). Logički izraz u zagradama ima vrednost logičke istine ako je posmatrana godina prestupna, a logičke neistine ako nije. Znajući da logički operatori uvek daju vrednost 1 ili 0, ta vrednost može da se doda na 28 da bi se dobio ispravan rezultat. << Ceo pasus treba izbaciti. >>
strana: 66
red: ↓10
uslov nastavljanja ciklusa uslov nastavljanja ili završavanja ciklusa
strana: 66
red: ↓16
do {}
do {} while ( true ) ;
strana: 66
red: ↑12
for (int i=1; i<=n; s+=i); for (int i=1; i<=n; s+=i++);
strana: 68
red: ↑2
Rezultat 4.3 Rezultat 4.1
strana: 75
red: ↓2
Nizovi podataka predstavljaju najjednostavnije i najčešće korišćene složene tipove. Nizovi podataka predstavljaju najjednostavnije složene tipove.
strana: 76
red: ↑4
a poslednji a7. a poslednji a6.
strana: 76
red: ↑2
na niz od 10 elemenata na niz od 4 elementa
strana: 77
red: ↓7 i ↓8
brojeva dvostruke tačnosti brojeva jednostruke tačnosti
strana: 78
red: ↑7
b[i][j] = vektor[i+j]; b[i][j] = a[i+j];
strana: 79
red: ↑13
new int[10][5]; new int[5][10];
strana: 79
red: ↑12
// e je treća vrsta matrice d. // d je treća vrsta matrice c.
strana: 82
red: ↓13
same promenljive samog elementa niza
strana: 82
red: ↑18
tekući element ciklusa tekući element niza
strana: 84
red: ↓4
operativnoj memoriji operativnom sistemu
strana: 84
red: ↓8
U jeziku Java ne može doći do curenja memorije, jer se deo u dinamičkoj zoni ne oslobađa dok postoji bar jedan pokazivač koji pokazuje na njega. Ne može da se pojavi ni viseći pokazivač, jer sve dok pokazivač postoji, pokazivani deo u dinamičkoj zoni memorije se ne oslobađa. U jeziku Java ne može doći do curenja memorije, jer se deo u dinamičkoj zoni automatski se oslobađa kad više ne postoji nijedan pokazivač koji pokazuje na njega. Ne može da se pojavi ni viseći pokazivač, jer sve dok postoji bar jedan pokazivač, pokazivani deo u dinamičkoj zoni memorije se ne oslobađa.
strana: 85
red: ↓20
skalpro1.c SkalPro.java
strana: 89
red: ↓19
while (j>=0 && a[j]>b) j--; while (j>=0 && a[j]>b) a[j+1] = a[j--];
strana: 90
rezultat 5.3
<< Uređeni niz je pogrešan >>  
strana: 91
red: ↓22
while (i<n1 && s2[j]==s1[i]) i++; while (i<n1 && s2[j]!=s1[i]) i++;
strana: 94
red: ↑8
(slika 5.7.a) (slika 5.7.b)
strana: 95
red: ↓4
Matricu smestiti u dinamičku zonu memorije. << Celu rečenicu treba izbaciti. >>
strana: 96
red: ↑2
tri dinamičke matrice tri matrice
strana: 100
red: ↓3
tipa te klase. tipa te klase, kao i njihove funkcionalnosti.
strana: 101
red: ↑21
k još ne postoji. j još ne postoji.
strana: 102
red: ↓20
§6.5 (▤111) §6.6.1 (▤113)
strana: 109
red: ↓16
… predviđen za njihovo prihvatanje. … predviđen za njihovo prihvatanje. Umesto nekoliko neobaveznih argumenata može da se navede i jedan niz navedenog tipa (tipParametra[]).
strana: 115
red: ↓11
konverzija %s ili %s konverzija %s ili %S
strana: 115
red: ↑23
public double cas() { return cas; }
public double min() { return min; }
public double sek() { return sek; }
public int cas() { return cas; }
public int min() { return min; }
public int sek() { return sek; }
strana: 120
red: ↓9
Postavljanje vrednosti nestatičkim moguće je i nestatičkim poljima Postavljanje vrednosti moguće je i nestatičkim poljima
strana: 120
red: ↓14
veličine u veličine za sva nestatička polja u
strana: 121
red: ↓12
Kao što je rečeno u §6.8 (▤118 i ▤120) Kao što je rečeno u §6.8.3 (▤120)
strana: 121
red: ↑15
naredbe return u naredbe return status; u
strana: 121
red: ↑7
(bez pozivanja metode exit) (bez pozivanja metode exit, ili bez izvršavanja naredbe return u glavnoj metodi)
strana: 122
red: ↑15
predstavljaju se klasama tipovima podataka predstavljaju se klasnim tipovima podataka
strana: 123
red: ↑5
(slika 6.7.a) (slika 6.3.a)
strana: 124
red: ↓8
(slika 6.7.b) (slika 6.3.b)
strana: 124
red: ↑18
(slika 6.8.a) (slika 6.4.a)
strana: 124
red: ↑14
potpuni prototipi potpuni potpisi
strana: 124
red: ↑10
(slika 6.8.b) (slika 6.4.b)
strana: 125
red: ↑6
Na slici 6.9 Na slici 6.5
strana: 126
red: ↓7
oznaka za vidljivost polja oznaka za dostupnost polja
strana: 126
red: ↑13
Na slici 6.10 Na slici 6.6
strana: 126
red: ↑12
class Alfa  { };
class Beta  { private Alfa a; };
class Gama  { private Delta d; };
class Delta { private Gama g; 
              public void m(Alfa a); };
class Eta   { private Alfa[] a;
              private Beta[] b; };
class Alfa  { }
class Beta  { private Alfa a; }
class Gama  { private Delta d; }
class Delta { private Gama g; 
              public void m(Alfa a){…} }
class Eta   { private Alfa[] a;
              private Beta[] b; }
strana: 127
red: ↓1 i ↓9
Na slici 6.10 Na slici 6.6
strana: 127
red: ↑27
Slika 6.11 Slika 6.7
strana: 130
red: ↑11
Slika 6.12 Slika 6.8
strana: 132
red: ↓18
for (int i=0; i<brTac-1; tacke[i]=tacke[++i]); for (int i=ind; i<brTac-1; tacke[i]=tacke[++i]);
strana: 132
red: ↑21
for (int i=0; i<brTac; s+=tacke[i]+" "); for (int i=0; i<brTac; s+=tacke[i++]+" ");
strana: 133
red: ↓20
Na kraju programa 6.1 Na kraju programa 6.2
strana: 133
slika 6.9
Tacka: Tacka1:
strana: 133
red: ↑5
Dijagram klase niza tačaka Uskladištavanje niza tačaka u memoriju
strana: 137
red: ↓2
Dijagram klase niza tačaka Dijagram klase jedinstvenih matičnih brojeva građana
strana: 140
red: ↑26
// JAVNA KLASA. // PAKETSKA KLASA.
strana: 140
red: ↑15
// PAKETSKA KLASA. // JAVNA KLASA.
strana: 144
red: ↑8
Sve klase osim PP3 su javne klase. Sve klase osim PP2 su javne klase.
strana: 144
red: ↑6
Nejavna klasa PP3 je u istoj datoteci s klasom PP2. Nejavna klasa PP2 je u istoj datoteci s klasom PP1.
strana: 145
slika: 7.1
strana: 145
red: ↑1
Dijagram klase reda tačaka Uskladištavanje hijerarhije paketa
strana: 146
red: ↑20
        static void m(double x) {}
public  static void m(char x, int z) {}
public  static void m(char x, int z) {}
public         void m(double x) {}
strana: 147
red: ↓20
članova klase Druga. članova klase Klasa.
strana: 147
red: ↑5
Oznaka za klasu u dijagramu klasa Oznaka za paket u dijagramu klasa
strana: 148
red: ↓2
Oznaka za klasu u dijagramu klasa Oznaka za klasu u paketu u dijagramu klasa
strana: 148
red: ↑16
prost brojčani tip prost tip
strana: 149
red: ↓17
String toString()
static String toString(int baza)
static String toString(tip t)
String toString()
static String toString(tip t)

strana: 149
red: ↑14
niska s. niska nsk.
strana: 150
red: ↑16
isWhileSpace isWhiteSpace
strana: 150
red: ↑7
valueOf(Boolean b) valueOf(boolean b)
strana: 150
red: ↑5
parametra t. parametra b.
strana: 154
red: ↓12
StringBuilder(tip izr) StringBuilder(String nsk)
strana: 154
red: ↓14
Druga grupa konstruktora (za svaki tip po jedan) stvara objekat čiji je početni sadržaj tekstualni prikaz izraza izr. Za klasne tipove, za stvaranje tekstualnog prikaza izraza poziva se metoda toString iz odgovarajuće klase. Drugi konstruktor stvara objekat čiji je početni sadržaj niska nsk.
strana: 150
red: ↑1
Dijagram klase niza tačaka Dijagram klasa za ravni obojenih krugova
strana: 161
red: ↑20
Na početku datoteke Tacka.java određeno je, naredbom package, da ova jedinica prevođenja pripada paketu ravan. Zatim je naredbom import static zatraženo uvoženje na zahtev imena statičkih članova iz klase java.lang.Math. << Ceo pasus treba izbaciti. >>
strana: 162
red: ↑11
public int zelene() public int zelena()
strana: 166
red: ↑18
Definicija klase ravni obojenih krugova (Ravan.java) Ispitivanje klase ravni obojenih krugova (RavanTest.java)
strana: 170
red: ↓2
podgrupa druge klase. podgrupa druge grupe.
strana: 173
red: ↓17
posebno interesantni zaštićena polja c i e, kao i zaštićena metoda m1. posebno interesantna zaštićena polja c i e.
strana: 174
red: ↓1
U klasi Beta postoje četiri metode: dve nasleđene (zaštićena m1() i javna m2()) i dve sopstvene javne (m2(int) i m3()). U slučaju metoda m2 radi se o … U klasi Beta postoje četiri javne metode: dve nasleđene (m1() i m2()) i dve sopstvene (m1(int) i m3()). U slučaju metoda m1 radi se o …
strana: 174
red: ↓22
(videti metode m1 u primerima 8.1, ▤171 i 8.2, ▤173) (videti metode m1 u primeru 8.2, ▤173)
strana: 174
red: ↑14
public    static int d; protected static int d;
strana: 176
red: ↓7
private        int  c;
public  static int  d;
private static int  c;
private        int  d;
strana: 177
red: ↓15
osnovne klase natklase
strana: 178
red: ↓17
Delta.d = 7; Delta.c = 7;
strana: 178
red: ↑23
poljem d poljem c
strana: 180
red: ↓3
private int a = 1;
private int b;
private int c;
          int a = 1;
protected int b;
public    int c;
strana: 181
red: ↑13
if (pod instanceof NadTip)
  nad = (nadTip)pod;
if (nad instanceof PodTip)
  pod = (PodTip)nad;
strana: 187
red: ↓8
getClass().getName + getClass().getName() +
strana: 190
red: ↑10
iz primera 6.12 iz primera 8.12
strana: 192
red: ↓13
(§8, strana169) (§8.1.1, ▤170)
strana: 194
slika 8.1
strana: 194
red: ↓2
§6.11 (▤124) §6.11 (▤125)
strana: 194
slika 8.2
strana: 195
red: ↑12
(program 7.3, ▤163) (program 7.1, ▤161)
strana: 195
red: ↑11
Klase geometrijskih figura u ravni u paketu ravan Klase geometrijskih figura u ravni u paketu figure
strana: 196
red: ↑21
(program 7.3, ▤163) (program 7.1, ▤161)
strana: 198
red: ↑13
Za uskladištavanje figura … Prvo za čitanje podataka s glavnog ulaza napravi se objekat ul tipa Scanner inicijalizovan objektom System.in (videti i program 7.5, ▤166), a za uskladištavanje figura …
strana: 198
red: ↑5
Citaj.Double() ul.nextDouble()
strana: 199
red: ↑21
Trougao1.java Trougao.java
strana: 199
red: ↑5
lista geometrijskih figura niz geometrijskih figura
strana: 200
red: ↑3
Figura.java Figure.java
strana: 203
red: ↑17
vredn vred
strana: 205 i 206
program 8.9, 8.10 i 8.11
red: ↓1 ili ↓2
(uredjivanje.…) (uredjivaci.…)
strana: 209
red: ↑15
ugnežđenog tipa moguć je ugnežđenog tipa iz okružujućeg tipa moguć je
strana: 210
red: ↓12
// Sakriva Alfa.b // Sakriva Spolja.b
strana: 210
red: ↑8
(member type) (member class)
strana: 210
red: ↑4
Dostupan tip član Dostupna klasa član
strana: 210
red: ↑2
ImeOkružujućegTipa . ImeTipaČlana ImeOkružujućeKlase . ImeKlaseČlana
strana: 213
red: ↓7
Pristupiće se nestatičkom članu okružujućeg objekta. Pristupiće se odgovarajućem članu okružujućeg objekta.
strana: 218
red: ↑16
Lokalna klasa Bezimena klasa
strana: 219
red: ↑23
Lokalna klasa Ugnežđeni interfejsi
strana: 219
red: ↑6
(čak i bez proširivanja istog) (čak i bez ostvarivanja istog)
strana: 223
red: ↑5
(▤201) (▤203)
strana: 225
slika: 10.1
strana: 238
red: ↑16
s jednim rukovaocem s dva rukovaoca
strana: 242
red: ↓18
predstavlja objekat f ne postoji algebarski izraz za neodređeni integral, izraz f.I(b) će dovesti do predstavlja tekući objekat this ne postoji algebarski izraz za neodređeni integral, izraz I(b) će dovesti do
strana: 244
red: ↓16
(program 10.2, ▤236) (program 10.2, ▤237)
strana: 253
red: ↓2
Spolja Sklop
strana: 253
red: ↑13 i ↑12
StringBuffer StringBuilder
strana: 258
red: ↑10
kao i parametara i povratnih vrednosti metoda. kao i parametara, lokalnih promenljivih i povratnih vrednosti metoda.
strana: 261
red: ↑20
gd.stavi(); gd.stavi(1.2);
strana: 262
red: ↑15
parametri tipa tipovni parametri
strana: 263
red: ↑13
GC1<T> GC<T>
strana: 264
red: ↓13
iz primera 11.17 iz primera 11.7
strana: 264
red: ↓17 i ↓18
GC1 GC
strana: 264
red: ↑9
f:C1=rez:S~C2. f:C1=rez:S~C1.
strana: 265
red: ↓6
p:T:C1 p:T~C1
strana: 266
red: ↓14
§11.2 §11.2.2
strana: 266
red: ↑18
označavanje tipova raznih elemenata metode: tipovnog argumenta, tipa povratne vrednosti, tipa podatkovnih parametara i tipove lokalnih promenljivih. označavanje raznih elemenata metode: tipovnih argumenata, kao i tipa povratne vrednosti, podatkovnih parametara i lokalnih promenljivih.
strana: 266
red: ↑9 do ↑5
C1 C
strana: 267
red: ↓10
tipovni parametar T tipovni parametar S
strana: 267
red: ↑17
Byte String
strana: 269
red: ↓7
Klasa C3 ne proširuje interfejs I2, Klasa C3 ne ostvaruje interfejs I2,
strana: 269
red: ↓9
I2 I1
strana: 271
red: ↑21
džoker znak džoker tip
strana: 273
red: ↑13 i 11
argumenti tipova tipovni argumenti
strana: 273
red: ↑12
argumenata tipova tipovnih argumenata
strana: 273
red: ↑7
parametara tipova tipovnih parametara
strana: 273
red: ↑1
§11.2 §11.5
strana: 276
red: ↑30 i ↑20
u primeru 11.3 u primeru 11.4
strana: 277
red: ↓13
programa 9.5.1 programa 9.1
strana: 282
red: ↓15
RedrTest.java Red3Test.java
strana: 290
red: ↓22
§12.11 primer 12.11
strana: 294
red: ↑20
  • nit2 oslobodi monitor objekta obj1
  • obe niti nastavljaju s radom
     
  • nit2 oslobodi monitor objekta obj1
  • nit2 oslobodi monitor objekta obj2
  • obe niti nastavljaju s radom
strana: 299
red: ↓1
§12.2.3 (▤285) i §12.2.1 (▤287) §12.2.1 (▤285) i §12.2.3 (▤287)
strana: 301
program 12.4
<< Na više mesta ime niza >> niz << treba zameniti sa >> mer
strana: 301
red: ↓16
for (int i=ind; i<duz; niz[i++]=niz[i]);
return (E)e;

for (int i=ind; i<duz; mre[i++]=mer[i]);
mer[duz] = null;
return (E)e;
strana: 302
red: ↓9
koja je konverzija nagore koja je konverzija nadole
strana: 302
red: ↑20
elementima niza mer završe (mer[i].join()) elementima niza odr završe (odr[i].join())
strana: 304
red: ↓10
Obrada generičke zbirke uporedivih stvari Obrada generičke zbirke merljivih stvari
strana: 305
slika 12.4
Skladiste<E> Skladiste<P>
strana: 310
red: ↑15
izlaz i pun ulaz, izlaz i pun

       
Autor: Laslo Kraus
E-pošta: kraus@etf.rs

Copyright © 2019, Laslo Kraus
Poslednja revizija: 20.11.2019.