Tooling Orta

Class.newInstance() yönteminden kurucu yansımasına

Kullanımdan kaldırılan Class.newInstance() yöntemini açık kurucu araması ve çağrısıyla değiştirin.

✕ Deprecated Class.newInstance()
Plugin plugin = pluginClass.newInstance();
✓ Constructor reflection
Plugin plugin = pluginClass
        .getDeclaredConstructor()
        .newInstance();
Bu kodda bir sorun mu gördünüz? Bize bildirin.
✅

Desteklenen API

Kullanımdan kaldırılan Class.newInstance() kullanımını kaldırır.

🎯

Açık kurucu

İstenen imza görünürdür ve bağımsız değişken kabul edebilir.

🛡

Dürüst hatalar

Kurucu istisnaları InvocationTargetException ile temsil edilir.

Eski Yaklaşım
Class.newInstance()
Modern Yaklaşım
Açık kurucu araması
JDK'dan itibaren
9
Zorluk
Orta
Class.newInstance() yönteminden kurucu yansımasına
Mevcut

Class.newInstance() JDK 9'da (Eylül 2017) kullanımdan kaldırıldığından beri önerilir.

Class.newInstance(), kurucunun fırlattığı istisnaların derleme zamanı denetimini atlayabildiği ve yalnızca parametresiz kurucuyu desteklediği için kullanımdan kaldırılmıştır. Açık Constructor araması seçilen imzayı görünür kılar ve yansıtmalı çağrı hatalarını uygun yansıma istisnalarıyla bildirir. Modül ve erişim kuralları geçerliliğini korur; bu kalıp kapsüllemeyi aşmayı önermez.