簡體   English   中英

Java在沒有警告的情況下強制轉換具有特定類型的泛型類

[英]Java Casting a Generic Class with a specific type without warnings

我有一個類ListFragment

 public class ListFragment<T> extends DialogFragment {

當我嘗試將對象轉換為ListFragment的特定類型時,此String

ListFragment<String> lfst = (ListFragment<String>)getFragmentManager().findFragmentByTag("somePicker");

它給我一個警告類型安全性:未檢查的從Fragment到ListFragment的強制轉換

要刪除警告,我必須添加@SuppressWarnings("unchecked")

我需要ListFragment<String>的原因是因為我將調用依賴於String的使用的方法。

因此,有一種方法可以在不使用禁止警告的情況下實現這一目標。 請注意,此代碼是為在Android上使用而編寫的。

一言以蔽之。 findFragmentByTag方法不知道它將返回ListFragment ,並且超類Fragment本身沒有類型參數。

您可以做的最好的事情就是抑制警告。

這只是一個警告。 運行它,測試它,如果一切順利。 別管它。 您可以禁止應用程序中的每個警告。 祝好運

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM