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

  • eurotuner

    eurotuner

    6 Mart 2006
  • Roger Huffman

    Roger Huffma

    4 ŞUBAT 2007
  • The Fashion Sight

    The Fashion

    22 AĞUSTOS 2011