SORU
4 Kasım 2009, ÇARŞAMBA


Nasıl kendi türünü belirtmeden Java benim Numaralama başvuru yapabilir miyim

Bu gibi kendi numaralandırma tanımlayan bir sınıf var:

public class Test
{
    enum MyEnum{E1, E2};

    public static void aTestMethod() {
        Test2(E1);  // << Gives "E1 cannot be resolved" in eclipse.
    }
    public Test2(MyEnum e) {}
}

Eğer benim belirttiğim MyEnum.E1 gayet iyi çalışıyor, ama gerçekten sadece bunu yapmak istiyorum "". E1 Bunu gerçekleştirmek için nasıl herhangi bir fikir, ya da bu iş için başka bir dosyada tanımlı olmak zorunda mı?

SONUÇ: Alma sözdizimi doğru almak mümkün olmamıştı. Birçok sorunun cevabı bu mümkün değildi önerdi beri, bana ihtiyacım olan sözdizimi verdi birini seçin ve diğerleri upvote için gidiyorum.

Bu arada, GERÇEKTEN TUHAF yanı, Bu (daha önce aldığım statik almaya çalışmak), bir switch deyimi ederdim yazılı olan kullanılan numaralama izin vermedi numaralama için tarafından öneki türü--geri kalan kod gerekli. Başım ağrıyor.

CEVAP
4 Kasım 2009, ÇARŞAMBA


Aslında, iç içe geçmiş bir numaralama static import yapabilirsiniz. Aşağıdaki kod iyi derler:

package mypackage;

import static mypackage.Test.MyEnum.*;

public class Test
{
    enum MyEnum{E1, E2};

    public static void aTestMethod() {
        Test2(E1);  
    }

    public static void Test2(MyEnum e) {}
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Garrett Müller

    Garrett Mül

    26 HAZİRAN 2009
  • Manuel Vizcaino

    Manuel Vizca

    27 Mayıs 2008
  • superemposed

    superemposed

    25 Aralık 2007