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

  • JamesAtiPhone

    JamesAtiPhon

    16 EYLÜL 2010
  • Semantic Mastery

    Semantic Mas

    30 EKİM 2013
  • Showtime

    Showtime

    21 HAZİRAN 2006