Java’nın Dönüşümleri – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları
Java’yı Başlatma
Önceki örnekler, başlatıcı olarak yalnızca sabitleri kullanmış olsa da, Java, değişkenin bildirildiği anda geçerli olan herhangi bir ifade kullanılarak değişkenlerin dinamik olarak başlatılmasına izin verir.
Örneğin, karşıt iki kenarının uzunluğu verilen bir dik üçgenin hipotenüs uzunluğunu hesaplayan kısa bir programdır. Burada üç yerel değişken a, b ve c bildirilir. İlk ikisi, a ve b, sabitlerle başlatılır. Bununla birlikte c, dinamik olarak hipotenüsün uzunluğuna göre başlatılır (Pisagor teoremi kullanılarak).
Program, bağımsız değişkeninin karekökünü hesaplamak için Math sınıfının bir üyesi olan Java’nın yerleşik yöntemlerinden biri olan sqrt( )’yi kullanır. Buradaki kilit nokta, başlatma ifadesinin, yöntemlere, diğer değişkenlere veya hazır değerlere yapılan çağrılar dahil, başlatma sırasında geçerli olan herhangi bir öğeyi kullanabilmesidir.
Değişkenlerin Kapsamı
Şimdiye kadar kullanılan tüm değişkenler main() metodunun başında tanımlandı. Ancak Java, değişkenlerin herhangi bir blok içinde bildirilmesine izin verir. Açıklandığı gibi, bir blok, açılan bir kaşlı ayraçla başlar ve kapanan bir kaşlı ayraçla sona erer. Bir blok bir kapsamı tanımlar.
Böylece, her yeni blok başlattığınızda, yeni bir kapsam yaratmış olursunuz. Önceki programlama deneyiminizden muhtemelen bildiğiniz gibi, kapsam, programınızın diğer bölümlerinde hangi nesnelerin görülebileceğini belirler. Ayrıca bu nesnelerin ömrünü de belirler.
Diğer bilgisayar dillerinin çoğu iki genel kapsam kategorisi tanımlar: küresel ve yerel. Ancak, bu geleneksel kapsamlar, Java’nın katı, nesne yönelimli modeliyle pek uyuşmuyor. Küresel bir kapsam oluşturmak mümkün olsa da, bu açık ara kural değil, istisnadır.
Java’da iki ana kapsam, bir sınıf tarafından tanımlananlar ve bir yöntem tarafından tanımlananlardır. Bu ayrım bile biraz yapaydır. Bununla birlikte, sınıf kapsamı, bir yöntem tarafından tanımlanan kapsam için geçerli olmayan birkaç benzersiz özelliğe ve özniteliğe sahip olduğundan, bu ayrım bir anlam ifade eder.
Farklılıklar nedeniyle, sınıf kapsamı (ve içinde belirtilen değişkenler) tartışması, sınıflar açıklanana kadar ertelenir. Şimdilik, yalnızca bir yöntem tarafından veya bir yöntem içinde tanımlanan kapsamları inceleyeceğiz.
Bir metot tarafından tanımlanan kapsam, açılış kaşlı ayracı ile başlar. Ancak, bu yöntemin parametreleri varsa, onlar da yöntemin kapsamına dahil edilir. Bu çalışma parametrelere daha yakından bakacak olsa da, bu tartışmanın hatırı için, bunlar diğer herhangi bir yöntem değişkeni gibi çalışır.
Genel bir kural olarak, bir kapsam içinde bildirilen değişkenler, o kapsam dışında tanımlanan kod tarafından görülemez (yani erişilebilir olmaz). Böylece, bir kapsam içinde bir değişken bildirdiğinizde, o değişkeni yerelleştiriyor ve onu yetkisiz erişim ve/veya değişiklikten koruyorsunuz. Aslında, kapsam kuralları kapsülleme için temel sağlar.
Kapsamlar iç içe olabilir. Örneğin, her kod bloğu oluşturduğunuzda, yeni, iç içe geçmiş bir kapsam yaratmış olursunuz. Bu meydana geldiğinde, dış kapsam iç kapsamı çevreler. Bu, dış kapsamda bildirilen nesnelerin iç kapsamdaki kod tarafından görülebileceği anlamına gelir. Ancak bunun tersi doğru değildir. İç kapsam içinde bildirilen nesneler, bunun dışında görünmez.
Java tip Dönüşümleri
Java int String çevirme
String’i int’e çevirme Java
Charı int’e çevirme Java
Java Değişken değiştirme
En küçük int türü dönüşümü
Java Tip öğrenme
Java int to String
Açıklamaların da gösterdiği gibi, x değişkeni main() kapsamının başlangıcında bildirilir ve main() içindeki sonraki tüm kodlar tarafından erişilebilir. if bloğu içinde y bildirilir. Bir blok bir kapsamı tanımladığından, y sadece bloğundaki diğer kodlar tarafından görülebilir.
Bu nedenle bloğunun dışında y = 100; yorumlanır. Baştaki yorum sembolünü kaldırırsanız, y bloğunun dışında görünmediği için bir derleme zamanı hatası oluşur. Bir blok (yani iç içe geçmiş bir kapsam) içindeki kod, çevreleyen bir kapsam tarafından bildirilen değişkenlere erişime sahip olduğundan, if bloğu içinde x kullanılabilir.
Bir blok içinde, değişkenler herhangi bir noktada bildirilebilir, ancak yalnızca bildirildikten sonra geçerlidir. Bu nedenle, bir yöntemin başlangıcında bir değişken tanımlarsanız, o yöntem içindeki tüm kodlar tarafından kullanılabilir. Tersine, bir bloğun sonunda bir değişken bildirirseniz, hiçbir kodun ona erişimi olmayacağı için etkili bir şekilde yararsızdır. Örneğin, bu parça geçersizdir, çünkü bildiriminden önce sayı kullanılamaz.
Unutulmaması gereken bir diğer önemli nokta ise, değişkenler kapsamlarına girildiğinde oluşturulur ve kapsamları bırakıldığında yok edilir. Bu, bir değişken kapsam dışına çıktıktan sonra değerini tutmayacağı anlamına gelir. Bu nedenle, bir yöntem içinde bildirilen değişkenler, o yönteme yapılan çağrılar arasında değerlerini tutmaz. Ayrıca, bir blok içinde bildirilen bir değişken, blok bırakıldığında değerini kaybeder. Bu nedenle, bir değişkenin ömrü kapsamı ile sınırlıdır.
Gördüğünüz gibi, iç for döngüsüne her girildiğinde y her zaman -1 olarak yeniden başlatılır. Daha sonra 100 değeri atansa da bu değer kayboluyor.
Son bir nokta: Bloklar iç içe geçebilse de, bir dış kapsamda bir değişkenle aynı ada sahip olacak şekilde bildiremezsiniz. Bu bakımdan Java, C ve C++’dan farklıdır. İşte aynı ada sahip iki ayrı değişken bildirmeye çalışan bir örnek. Java’da bu yasa dışıdır. C/C++’da yasal olur ve iki çubuk ayrı olur.
Dönüşüm
Daha önce programlama deneyiminiz varsa, bir türden bir değerin başka bir türden bir değişkene atanmasının oldukça yaygın olduğunu zaten biliyorsunuzdur. İki tür uyumluysa, Java dönüştürmeyi otomatik olarak gerçekleştirir. Örneğin, uzun bir değişkene bir int değeri atamak her zaman mümkündür.
Ancak, tüm türler uyumlu değildir ve bu nedenle, tüm tür dönüştürmelerine dolaylı olarak izin verilmez. Örneğin, çiftten bayta tanımlanmış bir dönüşüm yoktur. Neyse ki, uyumsuz türler arasında bir dönüşüm elde etmek hala mümkündür. Bunu yapmak için, uyumsuz türler arasında açık bir dönüşüm gerçekleştiren bir atama kullanmanız gerekir. Hem otomatik tip dönüştürmelerine hem de döküme bakalım.
Java’nın Dönüşümleri
Bir veri türü başka bir değişken türüne atandığında, aşağıdaki iki koşul karşılanırsa otomatik bir tür dönüştürme gerçekleşir:
• İki tip uyumludur.
• Hedef tipi, kaynak tipinden daha büyüktür.
Bu iki koşul karşılandığında, genişleyen bir dönüşüm gerçekleşir. Örneğin, int türü her zaman tüm geçerli bayt değerlerini tutacak kadar büyüktür, bu nedenle açık bir atama ifadesi gerekmez.
Genişletme dönüştürmeleri için, tamsayı ve kayan nokta türleri dahil olmak üzere sayısal türler birbiriyle uyumludur. Ancak, sayısal türler char veya boolean ile uyumlu değildir. Ayrıca char ve boolean birbiriyle uyumlu değildir.
Daha önce bahsedildiği gibi, Java aynı zamanda değişmez bir tamsayı sabitini bayt, kısa veya uzun türündeki değişkenlere depolarken otomatik bir tür dönüştürmesi de gerçekleştirir.
Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır.
1) Backlink Paketi 50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)