«final» etiketlenmiş sorular

22
Java'da “final class” ın anlamı nedir?
Java hakkında bir kitap okuyorum ve tüm sınıfı ilan edebileceğinizi söylüyor final. Bunu kullanacağım bir şey düşünemiyorum. Programlamaya yeni başladım ve programcıların bunu programlarında gerçekten kullanıp kullanmadığını merak ediyorum . Eğer yaparlarsa, ne zaman kullanırlar, böylece daha iyi anlayabilir ve ne zaman kullanacağımı bilirim. Java nesne yönelimliyse ve bir sınıf …
569 java  final 

18
Java'daki “final” anahtar kelimesi nasıl çalışır? (Yine de bir nesneyi değiştirebilirim.)
Java'da final, değerlerinin değiştirilmeyeceğini belirtmek için değişkenlere sahip anahtar kelime kullanırız . Ama görüyorum ki sınıfın yapıcı / yöntemlerindeki değeri değiştirebilirsin. Yine, eğer değişken staticise bir derleme hatasıdır. İşte kod: import java.util.ArrayList; import java.util.List; class Test { private final List foo; public Test() { foo = new ArrayList(); foo.add("foo"); // …
480 java  final 

11
Java yansımasını kullanarak özel statik son alanı değiştirme
Bir dersim var private static finalMaalesef çalışma zamanında değiştirmem gereken alanı olan . Yansıma kullanarak bu hatayı alıyorum: java.lang.IllegalAccessException: Can not set static final boolean field Değeri değiştirmenin bir yolu var mı? Field hack = WarpTransform2D.class.getDeclaredField("USE_HACK"); hack.setAccessible(true); hack.set(null, true);

12
Neden Java'daki bir yöntem parametresinde “final” anahtar sözcüğünü kullanmalıyım?
Yöntem parametrelerinde kullanıldığında finalanahtar kelimenin gerçekten kullanışlı olduğunu anlayamıyorum . Anonim sınıfların kullanımını, okunabilirliği ve niyet beyanını hariç tutarsak, bu benim için neredeyse değersiz görünüyor. Bazı verilerin sabit kalmasını sağlamak, göründüğü kadar güçlü değildir. Parametre bir ilkel ise, parametre bir değer olarak yönteme geçirildiği ve değiştirilmesinin kapsam dışında bir etkisi …

14
Final ile efektif final arasındaki fark
Java 8'de lambdaslarla oynuyorum ve uyarı ile karşılaştım local variables referenced from a lambda expression must be final or effectively final. Anonim sınıf içindeki değişkenleri kullandığımda bunların dış sınıfta final olması gerektiğini biliyorum, ama yine de - final ile etkili final arasındaki fark nedir?

13
Java'da son anahtar kelimenin kullanımı performansı artırır mı?
Java'da, finalanahtar kelimenin kullanılabileceği, ancak kullanımının nadir olduğu birçok yer görüyoruz . Örneğin: String str = "abc"; System.out.println(str); Yukarıdaki durumda, strolabilirfinal ancak bu genellikle bırakılır. Bir yöntem hiçbir zaman geçersiz kılmayacaksa, son anahtar kelimeyi kullanabiliriz. Benzer şekilde miras alınmayacak bir sınıf durumunda. Nihai anahtar kelimenin bu durumların herhangi birinde veya …
347 java  final 


20
Farklı bir yöntemde tanımlanan bir iç sınıf içindeki nihai olmayan bir değişkene atıf yapılamaz
Düzenlendi: Bir zamanlayıcı thorugh birkaç kez çalıştıkça çeşitli değişkenlerin değerlerini değiştirmek gerekiyor. Zamanlayıcı üzerinden her yinelemeyle değerleri güncellemeye devam etmeliyim. Değerleri güncellememi engelleyecek gibi değerleri son olarak ayarlayamıyorum, ancak aşağıdaki ilk soruda açıkladığım hatayı alıyorum: Daha önce aşağıda ne yazmıştım: "Farklı bir yöntemde tanımlanan bir iç sınıf içinde son olmayan …

11
UPPER-CASE'te bir “statik son Kaydedici” bildirilmeli mi?
Java'da statik son değişkenler sabittir ve kural büyük harf olması gerektiğidir. Ancak, çoğu insan bir ihlali olarak çıkageldi düşük durumda kaydedicileri beyan olduğunu gördük PMD . Örneğin: private static final Logger logger = Logger.getLogger(MyClass.class); Google'da veya SO'da "statik son kaydedici" için arama yapın ve bunu kendiniz göreceksiniz. Bunun yerine LOGGER …

6
Java'da son olarak bildirilen == dizeleri karşılaştırmak
Java dizeleri hakkında basit bir sorum var. Aşağıdaki basit kod segmenti sadece iki dizeyi birleştirir ve sonra bunları karşılaştırır ==. String str1="str"; String str2="ing"; String concat=str1+str2; System.out.println(concat=="string"); Karşılaştırma ifadesi açık olarak concat=="string"döner false( equals()ve arasındaki farkı anlıyorum ==). Bu iki dize böyle bildirildiğinde final, final String str1="str"; final String str2="ing"; …
220 java  string  final 

5
Arayüz yöntemlerinde son argümanlar - amaç nedir?
Java'da, finalarabirim yöntemlerinde bağımsız değişkenler tanımlamak ve uygulama sınıfında buna uymamak kesinlikle yasaldır , örneğin: public interface Foo { public void foo(int bar, final int baz); } public class FooImpl implements Foo { @Override public void foo(final int bar, int baz) { ... } } Yukarıdaki örnekte barve VS sınıfında …
189 java  class  interface  methods  final 

6
Nihai kötü tanımlanmış mı?
İlk olarak, bir bulmaca: Aşağıdaki kod ne yazdırıyor? public class RecursiveStatic { public static void main(String[] args) { System.out.println(scale(5)); } private static final long X = scale(10); private static long scale(long value) { return X * value; } } Cevap: 0 Aşağıdaki spoiler. Eğer yazdırmak için Xölçek (uzun) ve yeniden …



15
Yöntem parametreleri ve yerel değişkenler için final ne zaman kullanılmalıdır?
Mümkün olduğunca kullanmayı öneren birkaç referans ( örneğin ) buldum finalve bunun ne kadar önemli olduğunu merak ediyorum. Bu esas olarak, nihai yöntemler veya sınıflar değil, yöntem parametreleri ve yerel değişkenler bağlamındadır. Sabitler için bu çok mantıklı. Bir yandan, derleyici bazı optimizasyonlar yapabilir ve programcının amacını daha net hale getirir. …
171 java  final 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.