23 Assignment Operators

Merhaba Arkadaslar,
Bu yazimda Java da Assignment/atama operatorunu (= yani esittir) ve dogal olarak da degiskenler uzerinde incelemelerde bulunacagiz.

Oncelikle degisken nedir ? Degiskenler Java da birer bit tutuculardir/ bit holders.
int , double, String, Button, String[] turunde degisken yani bit tutucular tanimlayabiliriz.

primitive degiskenleri inceleyecek olursak. Ornegin ; byte bir degisken dusunelim ve degeri 6 olsun , Java da 1 byte 8 bittir. Bu durumda 6 degeri ,bit pattern/yapi 00000110 olarak temsil edilir.

Button b = new Button();

b hakkinda ne diyebiliriz peki ?
b bir reference variable / referans degiskendir ve Button objesine referansta bulunmaktadir. Bir referans degisken de bit holder/tutucudur.Yani tuttugu bu bitler ilgili objeye nasil ulasacaginin bilgisini tasir. Bit formatini bilememekteyiz

Button b = null;

b, hic bir objeye referansta bulunmuyor ,anlamina gelmektedir.

Incelemeye devam edelim ve bir kac ornek verelim, bunlara zaten yabanci degiliz.

int x=10;  //literal assignment
int y=x+2; //assignment with an expression
int z=x*y; //assignment with an expression

Burada dikkat cekmek istedigim konu tamsayi literallerinde varsayilan tur int tir. Bir onceki konuda literal konusuna deginmistik.

byte b = 10; //automatically narrows literal value to a byte
byte b = (byte) 10; // explicitly cast the int literal to a byte

Ilk satirdaki atama islemi gecerlidir. Burada Compiler/derleyici otomatik olarak literal int degeri byte degere cevirir. Ikinci satirda oldugu gibi explicity/acik bir sekilde byte degere  cast islemi yapilmaktadir. Bu ornegimiz short degisken icin de gecerlidir. Simdi de su ornegimizi inceleyelim;

byte a = 5;
byte b = 10;
byte c = b+c;  //compiler error

Continue reading 23 Assignment Operators