8个回答
展开全部
举个例子来说
你的钱包里你规定只装钱
那么你去出来的想也不想就是钱,管他是¥还是$不用转换的-->都是钱(确定里面是什么)
不用泛型的话 就不规定放什么
那么你取出来的东西就不一定是钱,这样你就要转换了,那要是石头的话你要转换成钱就错了(不确定里面到底是什么)
你的钱包里你规定只装钱
那么你去出来的想也不想就是钱,管他是¥还是$不用转换的-->都是钱(确定里面是什么)
不用泛型的话 就不规定放什么
那么你取出来的东西就不一定是钱,这样你就要转换了,那要是石头的话你要转换成钱就错了(不确定里面到底是什么)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先你要明白:
他给出的这个泛型,不是无意义的.
如果定义容器了list,如果你不定义他的泛型,那么他可以放不同类型的东西.
比如你定义了一个list<Integer>,这样的话
他只可以存放整型的数据,一旦你想要放其他的类型的数据,他会包错.
所以这个泛型的目的就是是定义的容器所放的内容是一个统一的类型.
他给出的这个泛型,不是无意义的.
如果定义容器了list,如果你不定义他的泛型,那么他可以放不同类型的东西.
比如你定义了一个list<Integer>,这样的话
他只可以存放整型的数据,一旦你想要放其他的类型的数据,他会包错.
所以这个泛型的目的就是是定义的容器所放的内容是一个统一的类型.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很多时候,尤其在使用对象的多态性的时候,你不知道进到你数据结构中的对象到底是什么类型的,执行的时候就会出问题。泛型就是限定一个数据结构,或者一个方法参数只允许传入什么类型的对象。
比如
类A,类B,类C,B和C继承A。B中有属性abc,C中有属性def
定义一个没有泛型的List,这时候你可以随便往里存,但从list往外取的时候(假设取出的对象叫obj),你要调用abc就要先转型,这时候C的对象会异常……
没事多看看教程,多敲敲代码,基本上练着练着也就会了,有一套动力节点301集java基础教程里面讲的很有趣也讲得很细致明了,建议你去看看。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
knightzhuwei 说的很正确 貌似也没什么好补充的。。。
简单点说 面向对象设计的最重要的目的之一 就是管理 泛型是管理中的一个比较常见的方法 假设
A,B继承了C 而D里面有个方法getC(C c) 那么 你想往这里传除C和他的子类之外其他参数的时候 必然是传不进去的 有效的提高了安全性 更明确了该方法的目的 这样就明白了吧?
简单点说 面向对象设计的最重要的目的之一 就是管理 泛型是管理中的一个比较常见的方法 假设
A,B继承了C 而D里面有个方法getC(C c) 那么 你想往这里传除C和他的子类之外其他参数的时候 必然是传不进去的 有效的提高了安全性 更明确了该方法的目的 这样就明白了吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询