SORU
30 EYLÜL 2008, Salı


Ne zaman bir yöntem parametreleri ve yerel değişkenler için son kullanmalıyım?

final mümkün olduğunca kullanmanızı öneririz başvuran (for example) Bir çift buldum ve bunun ne kadar önemli olduğunu merak ediyorum. Bu esas yöntem parametreleri ve yerel değişkenleri bağlamında, son yöntemler veya sınıflar. Sabitler için ortada mantıklı.

Bir yandan, derleyici bazı iyileştirmeler yapabilir ve programcı niyet daha net yapar. Öte yandan, ekler ayrıntı ve iyileştirmeleri önemsiz olabilir.

Yapmak unutmayın için çaba gereken bir şey mi?

CEVAP
30 EYLÜL 2008, Salı


Takıntı:

  • Son alanlar son olarak alanları İşaretleme onları inşaat sonunda, bu alana başvuru değişmez yapmaya zorlar. Bu alanların güvenli yayını verir ve daha sonra senkronizasyon okur için ihtiyaç önlemek. (Bir nesne başvurusu için, sadece referans değişmez olduğu alan başvuru nesnesi olan şeyler değişmezliğini tanıdı etkileyen değişmeyi ve ifade ettiğini unutmayın.)
  • Statik ve final alanlar kullanırdım nerede çeteleler şimdi bu davalar için kullanıyorum Ancak son statik alanlar.

Ama mantıklı düşünün kullanın:

  • Son sınıflar - Çerçeve/API tasarım olarak görüyorum yalnızca.
  • Son yöntem - son sınıfları aynı Temelde. Eğer deli gibi şablon yöntemi desenler kullanarak falan son işaretleme iseniz, muhtemelen çok fazla miras ve heyet yeterli güvenerek.

Anal hissi sürece görmezden

  • Yöntem parametreleri ve yerel değişkenler - NADİREN büyük ölçüde tembel olduğum için bunu yapın ve kodu clutters buluyorum. Değiştirmek için gitmiyorum parametreleri ve yerel değişkenleri işaretlemek tamamen kabul ederim."". daha doğru Varsayılan olmasını istiyorum. Ama değil ve kod Finalleri ile anlamak daha zor her yerinde buluyorum. Eğer başkasının kodunu girersem, onları dışarı çekmek için gitmiyorum ama eğer yeni bir kod yazıyorum eğer onları koymak istemiyorum. Tek istisna, anonim iç sınıf içinde erişebilmeniz için bir son işareti var durumda.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BeginnersTech

    BeginnersTec

    8 NİSAN 2011
  • dougownsall

    dougownsall

    7 EKİM 2007
  • NightShader1

    NightShader1

    25 Temmuz 2006