2010-05-11 12 views
8

Bize gerçek kodu burada göstermedim, sadece bahsetti, onu son derece tuhaf buldum. o instance initializer var -Bu geçerli Java kodu var mı? Öğretmenim bunun olduğunu iddia ediyor ama ben gerçekten bu kadar emin değilim

public class Person 
{ 
    String Name; 
    int Age; 

    { 
     //These two braces just chilling together - VALID? :O 
    } 
} 
+9

Neden kendiniz için derleyemiyorsunuz? – someguy

+5

Tutulmayı (veya başka bir IDE) ateşleyin ve kendiniz yazın - IDE şikayet etmeyecektir. – bergyman

+0

Elbette - Bir dene. Çoğu dilde geçerlidir. Eh, geliştirdiğim çoğu. Sadece şu anda açık kodda denedim emin olmak için. –

cevap

16

Evet: o bu Geçerli Java olduğunu söylediklerini göre Örneğin

. Ayrıca Double-Brace Initialization için anonymous subclasses ile birlikte kullanabilirsiniz.

+0

Aralarında bir yarı-kolon ile değil. {} Yalnızca bir kapsam tanımıdır. – vfilby

+5

Nope, sınıf gövdesinde bu şekilde gezinirken değil, boş bir örnek başlatıcısı. İç yöntemler, o zaman evet, bir kapsam tanımı. – gustafc

+2

@vfilby: Hayır, bir sınıf içinde bir bloksa, ancak bir yöntem veya yapıcıda değilse, bu bir örnek başlatıcısıdır. –

İlgili konular