Makul bir Java değiştiriciler sırası nedir?
- Öz
- nihai
- yerli
- özel
- korumalı
- halka açık
- statik
- strictfp
- senkronize
- geçici
- uçucu
Güncelleme
I ifadeleri değişti tavsiye etmek makul düzen tavsiye olup olmadığını tartışmaları sakinleştirmeye için.
Makul bir Java değiştiriciler sırası nedir?
Güncelleme
I ifadeleri değişti tavsiye etmek makul düzen tavsiye olup olmadığını tartışmaları sakinleştirmeye için.
Yanıtlar:
Değiştiricilerin alışılmış kullanım sırası Java Dil Spesifikasyonunda belirtilmiştir (Java Sanal Makine Spesifikasyonunda değil) örneğin, sınıf değiştiriciler için aşağıdaki tanımı bulacaksınız (özet):
ClassModifiers: ClassModifier ClassModifiers ClassModifier ClassModifier: one of Annotation public protected private abstract static final strictfp[....]
Bir sınıf bildiriminde iki veya daha fazla (farklı) sınıf değiştirici görünürse, bu durumda bunların ClassModifier için üretimde yukarıda gösterilenle tutarlı sırada görünmeleri alışılmış bir durumdur, ancak gerekli değildir. (paragrafın altındaki küçük metin!)
Bu cümleyi, değiştiricilerin kullanımının belirtildiği başka yerlerde bulacaksınız, örneğin burada alan değiştiriciler için.
Güncelleme : Bunu kabul edilebilir bir cevap yapmak için "belirtilen / önerilen" ifadesini "geleneksel" ile değiştirdim. Eğer yorum okursanız (teşekkürler bu açıklığa kavuşturmak @EJP) ;-) bunu dikkate - Yine ben ediyorum tavsiye kullanmak alışılmış düzeni.
Google ayrıca Java spesifikasyonunda belirtilen geleneksel sırayı kullanmanızı önerir .
public / protected / private
abstract
static
final
transient
volatile
synchronized
native
strictfp
Güncelleme :OpenJDK topluluğundaki projeler içinyeni bir " Java Stil Yönergeleri " girişimi var. Ayrıca bir değiştirici sırası için bir önerisi vardırve ayrıcaJava 8'inyeni varsayılan değiştiricisini içerir.
public / private / protected
abstract
static
final
transient
volatile
**default**
synchronized
native
strictfp
Siparişin Java Virtual Machine Specification, Tablo 4.4'e göre kullanılması mantıklıdır.
İnt değerlerine göre.
Değiştirici (Java Platformu SE 8)