我试过了:
ArrayList<Pelicula> peliculas = YIFY.obtenerPeliculasPorVenir();
正在#obtenerPeliculasPorVenir
:
public static List<Pelicula> obtenerPeliculasPorVenir(){
List peliculas = null;
try {
peliculas = mapper.readValue(new API().peticionTexto("http://yts.re/api/upcoming.json"), new TypeReference<List<Pelicula>>(){});
}
catch (IOException excepcion) {
System.out.println(excepcion.getMessage());
}
return peliculas;
}
}
如果ArrayList
执行器 List
为什么我不能这样做?
是仅使用解决方案,还是应该采用另一种OOP方法?
例如,因为任何一个ArrayList
都是a,List
但不是全部List
是ArrayList
s LinkedList
。
是仅使用解决方案,还是应该采用另一种OOP方法?
NO。最好的选择是始终编码为高级接口/抽象类:
List<Pelicula> peliculas = YIFY.obtenerPeliculasPorVenir();
更多信息:
什么时候应该使用向下转换?
当框架仅提供对数据的访问作为更高级别的类时。例如,在Java Web Development中,通过以下方式从会话中检索属性HttpSession
//example to validate if user is logged
HttpSession session = request.getSession();
User loggedUser = (User)session.getAttribute("user"); //it returns Object
if (loggedUser == null) {
//there's no user logged in!
//do something about it!
}
//the user is logged, he/she can continue working...
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句