问题描述
泛型需要类型检查,比如应该这样写List<String>list;
,可是在jdk中却少有这样写,甚至找不到;下面是jdk中AudioSystem类的一个方法,如此没有类型检查的数不胜数,在此提出疑问->泛型类型检查到底有没有必要?如果有必要,为什么sun本身的代码都没有加上?如果没必要为什么要有类型检查这个概念,它存在的理由是什么?publicstaticAudioInputStreamgetAudioInputStream(Filefile)throwsUnsupportedAudioFileException,IOException{Listproviders=getAudioFileReaders();AudioInputStreamaudioStream=null;for(inti=0;i<providers.size();i++){AudioFileReaderreader=(AudioFileReader)providers.get(i);try{audioStream=reader.getAudioInputStream(file);//throwsIOExceptionbreak;}catch(UnsupportedAudioFileExceptione){continue;}}if(audioStream==null){thrownewUnsupportedAudioFileException("couldnotgetaudioinputstreamfrominputfile");}else{returnaudioStream;}}
时间: 2024-09-20 05:53:56