Banalne pytanie nt Konstruktora i przypisania.

0

Witam, otóż robiąc pewien kurs napotkałem się z dwoma sposobami przypisania, mianowicie :

int zmienna = 5;

i 

int zmienna(5);

Czy te zapisy różnią się czymś od siebie? Można ich używać zamiennie?

0

Różnią się tym, że w pierwszym przypadku używa się znaku równości, a w drugim nie. Za to w tym drugim liczba musi być umieszczona w nawiasie.
;P

W liście inicjalizacyjnej konstruktora można użyć tylko drugiego zapisu.

0

Czyli jak będę używał tylko drugiego zapisu to to nie będzie miało jakichś fatalnych skutków w programie? ;d

0

Oprócz tego, że w przypadku typów prostych jest to po prostu nieczytelne. Takiej formy używa się w przypadku obiektów by podkreślić użycie konstruktora kopiującego bądź konwertującego, a nie operatora przypisania przy inicjalizacji.

0

W starych podręcznikach i kursach Javy (chyba takich z XX wieku) nadal są zapisy:

String s = new String("abc");
0

Nienajlepszy przykład, s="abc" i s=new String("abc") nie są równoważne.
Po instrukcjach

String s1 = "abc";
String s2 = "abc";
String s3 = new String("abc");

porównanie referencji s1 == s2 zwróci true, a porównanie s1 == s3 zwróci false.

1 użytkowników online, w tym zalogowanych: 0, gości: 1