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

  • Ama Jenna

    Ama Jenna

    29 NİSAN 2011
  • footiecyclo

    footiecyclo

    26 EYLÜL 2009
  • itfigueres

    itfigueres

    12 EKİM 2013