Çeteleler nedir ve neden yararlıdır?
Bugün bu sitede bazı sorular ile tarama ve böyle bir çözüm içinenum
being used in singleton pattern iddia edilen konu hakkında bir güvenlik faydaları bir söz buldum.
Asla enum
s kullandım ve en fazla birkaç yıl için şimdi Java ile programlama yapıyorum. Ve görünüşe göre çok şey değişti. Şimdi onlar bile tam kendi içinde OOP desteği patladı.
Şimdi neden ve ne için gün programcılığına gün içinde numaralama kullanmalıyım?
CEVAP
Her zaman bir değişken (özellikle bir yöntemi parametre) tek olası değerler, küçük bir bir alırken çeteleler kullanmalısınız. Örnek türü sabitleri gibi şeyler olurdu (sözleşme durumu: "kalıcı", "", "") çırak, ya da bayraklar ("şimdi", "yürütme") erteleme. yürütmek temp
Eğer tamsayı yerine çeteleler (veya Dize kodları) kullanıyorsanız,-derleme zamanı kontrol etme ve geçersiz sabitler geçen hataları önlemek artırmak ve kullanımı yasal olan belge.
BTW, aşırı çeteleler ölebilir ama senin yöntem de çok (genelde daha iyi için birkaç farklı yöntem yerine tek yöntem bu alır birkaç bayraklar hangi değiştir ne öyle), ama eğer kullanmak zorunda bayrakları veya türü kodları, çeteleler şekilde gidin.
Hangisi daha iyi? bir örnek olarak,
/** Counts number of foobangs.
* @param type Type of foobangs to count. Can be 1=green foobangs,
* 2=wrinkled foobangs, 3=sweet foobangs, 0=all types.
* @return number of foobangs of type
*/
public int countFoobangs(int type)
karşı
/** Types of foobangs. */
public enum FB_TYPE {
GREEN, WRINKLED, SWEET,
/** special type for all types combined */
ALL;
}
/** Counts number of foobangs.
* @param type Type of foobangs to count
* @return number of foobangs of type
*/
public int countFoobangs(FB_TYPE type)
Bir yöntem çağrısı gibi:
int sweetFoobangCount = countFoobangs(3);
o zaman olur:
int sweetFoobangCount = countFoobangs(FB_TYPE.SWEET);
İkinci örnekte, hemen izin verilen açık, dokümanlar ve uygulama olamaz senkronize ve derleyici bu zorlayabilir. Ayrıca, geçersiz bir çağrı gibi
int sweetFoobangCount = countFoobangs(99);
artık mümkün değil.
Yansıma nedir ve neden yararlıdır?...
SQL, PostgreSQL, onlar Nedir ve neden ...
Bir serialVersionUİD nedir ve neden ku...
Neden Python kodunu daha hızlı bir işl...
Bir kendisine dahil ederse, ne olduğun...