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

  • Cristina Landa

    Cristina Lan

    28 Ocak 2010
  • Google Analytics

    Google Analy

    25 ŞUBAT 2008
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007