JAVA bytecode etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
JAVA bytecode etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

5 Nisan 2012 Perşembe

JAVA Bytecode Ayrıntılı İnceleme - 2 (String Ekleme / Birleştirme / Concatenation)

JAVA Bytecode Nasıl Elde Edilir? başlıklı  ve JAVA Bytecode Ayrıntılı İnceleme başlıklı önceki yazılarımda, hazırlamış olduğum ByteCodeTest isimli sınıfın JAVA bytecode'unu nasıl elde edeceğimizi ve JAVA kodlarına karşılık gelen JAVA bytecode'larını incelemiştim.

Şimdi ise ByteCodeTest.java sınıfına bir method daha ekleyip string ekleme / birleştirme (string concatenation) işlemini JAVA bytecode'ları yardımıyla inceleyeceğim ve basit ama önemli bir konudan bahsedeceğim... (Devam)

JAVA Bytecode Ayrıntılı İnceleme

JAVA Bytecode Nasıl Elde Edilir? başlıklı önceki yazımda, hazırlamış olduğum ByteCodeTest isimli sınıfın JAVA bytecode'unu nasıl elde edeceğimizi açıklamıştım. Bu yazımda ise, yazmış olduğum JAVA kodlarını ve karşılık gelen JAVA bytecode'larını inceleyeceğim.

Bu amaçla ilk önce ByteCodeTest.java sınıfını aynen kullanarak karşılaştırma yapacağım, daha sonra ise bu sınıfa bir method daha ekleyip string ekleme / birleştirme (string concatenation) işlemini JAVA bytecode'ları yardımıyla inceleyeceğim ve basit ama önemli bir konudan bahsedeceğim... (Devam)

JAVA Bytecode Nasıl Elde Edilir?

JAVA bytecode hakkında bir önceki yazımda yaptığımız girizgahtan sonra gelelim bu bytecode'u nasıl elde edeceğimize.

Bunun için ihtiyacımız olan şeyler herhangi bir konsol penceresi (Windows Command Prompt, Unix-Solaris Console vb.) ve sistemimizde kurulu olan JDK (JAVA Development Kit). Yapmamız gereken ise JDK'nın \bin klasörüne gidip javap dosyasını çalıştırmak... (Devam)

JAVA Bytecode nedir?

JAVA bytecode, JAVA sanal makinesinin (JAVA virtual machine) işlediği komutlara verilen addır. Yani sanal makinenin anlayacağı dildeki bir komut anlamına gelmektedir. JAVA dilinde yazdığımız kodlar, derleyici (JAVA compiler) tarafından bytecode'a dönüştürülürler.

Bir byte'ın alabileceği 256 farklı değer olduğundan, 256 farklı komut vardır. Ancak bunlardan 51 tanesi rezerve edilmiş ve ihtiyaç duyulduğunda kullanılmak üzere boş bırakılmıştır... (Devam)