类型不匹配 java_java – 与泛型类型不匹配
这是一个界面:
public interface Foo extends Comparable> {
...
}
并且有一些类实现此接口:
public class Bar extends Something implements Foo {
public Vector> giveBar() {
...
}
}
public class Boo extends SomethingElse implements Foo {
public Vector> giveBoo() {
...
}
}
现在我想在矢量中保留一堆Foos(可能真的是Foos或Boos).
Bar bar = new Bar();
Boo boo = new Boo();
Vector> vector;
if (...)
vector = bar.giveBar();
else
vector = boo.giveBoo();
我明白了:
Type mismatch: cannot convert from Vector> to Vector>
同样适用于:
Vector vector;
if (...)
vector = giveBar();
else
vector = giveBoo();
是Bar和Boo的超类是否能解决这个问题的唯一解决方案?
解决方法:
所有代码归结为:
Vector vector = new Vector();
在这种情况下,B扩展了A,但这是不允许的,因为类型不匹配.要弄清楚为什么这不起作用,请想象以下代码:
Vector> vector = new Vector>();
vector.add(new Vector());
变量的类型是未知类型的向量的向量;分配给它的是一个字符串向量的向量.第二行添加一个整数向量.变量Vector的组件类型,它接受Vector< Integer> ;;但实际矢量的组件类型是Vector< String> ;,但它没有.如果编译器没有反对第一行的赋值,它将允许您编写不正确的第二行而不被发现.
C#的泛型具有类似的限制,但区别在于C#中的泛型类存储它的组件类型,而Java在编译代码时会忘记组件类型.
ps – 为什么你在使用Vector而不是LinkedList或ArrayList?是因为涉及线程问题吗?
标签:mismatch,java,types,generics
来源: https://codeday.me/bug/20190726/1548559.html
类型不匹配 java_java – 与泛型类型不匹配相关推荐
- 判断括号匹配的程序java_java判断左右括号匹配
java判断左右括号匹配 [2021-02-10 16:36:55] 简介: Java进行正则表达式匹配的方法:首先打开eclipse软件:然后运用d来进行数字的匹配,如果字符串中遇到了空白字符的话 ...
- c语言括号匹配的检验,检验括号匹配的算法
用栈实现检验括号匹配的算法没啥具体描述,数据结构的知识,急用,有重赏 思想是 先进栈,获取第一个半边括号,标记一下,继续进栈直到获取到第二个与之匹配的另一外括号,然后出栈,取出内容.就这样.. 数据结 ...
- logstash判断是否匹配_logstash 中的贪婪匹配
logstash 中的贪婪匹配: 10.252.142.174 - - [06/Sep/2016:08:41:36 +0800] "GET /api/validate/code/send?m ...
- php正则匹配实验报告,php正则匹配的相关知识总结
一.php正则简介 PHP中有两套正则匹配规则,一套基于POSIX,一套基于PCRE(英文全称:Perl Compatible Regular Expressions:翻译后就是"perl兼 ...
- 《OpenCV3编程入门》学习笔记9 直方图与匹配(五)模板匹配
9.5 模板匹配 基本思想: 在一幅图像中寻找与另一幅模板图像最匹配的部分,通过在输入图像上滑动图像块,对实际的图像块和输入图像进行匹配. 9.5.1 模板匹配:matchTemplate()函数 ...
- java中正则全局匹配_JS中正则表达式全局匹配模式/g用法实例
JS中正则表达式全局匹配模式 /g用法详解 本文章来详细介绍js中正则表达式的全局匹配模式 /g用法, var str = "123#abc"; var re = /abc/ig; ...
- Algorithm:C++语言实现之链表相关算法(单链公共结点问题、一般LCA、括号匹配、最长括号匹配、逆波兰表达式Reverse Polish Notation、直方图矩形面积、收集雨水问题)
Algorithm:C++语言实现之链表相关算法(单链公共结点问题.一般LCA.括号匹配.最长括号匹配.逆波兰表达式Reverse Polish Notation.直方图矩形面积.收集雨水问题) 目录 ...
- error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug...
属性1. 在工程上右键->属性->c/c++->代码生成->运行库 四个选项及含义分别如下: 1.1 /MDd:MD_DynamicDebug,我理解是 "共享DLL ...
- excel匹配_Excel中的数据匹配和查找
在Excel中,提供了多个可以用来进行数据匹配和查找的函数:HLOOKUP.INDEX.LOOKUP.MATCH和VLOOKUP等.其中使用最广的就是VLOOKUP,这篇文章就从VLOOKUP开始,介 ...
最新文章
- 如何估算深度神经网络的最优学习率
- laravel conf/app.php
- TensorFlow预训练模型在新图中权重部分加载
- CISCO ASA 5510 防火墙的配置实例
- 动视服务器状态,《使命召唤12》A.B.C服务器错误不用怕 动视给你支招
- golang 之 import 和 package 的使用
- Scikit-Learn之利用高斯过程回归
- 社交网络的数据挖掘与分析,什么是社交网络分析
- @开源镜像站(linux系统:Center OS|Ubuntu|Debian)
- 央视财经采访:康晓阳投资分享
- js的延迟执行 async defer/ js的数据类型全/ null和undefined区别/=、==、===的区别/js中的宏任务和微任务js的作用域附带试题有答案
- Unity3D移动平台简单实现
- 关于ubuntu上,usb设备编号
- MAC 如何强制关闭程序
- ACL最近三年论文整理(word embedding专题)
- CentOS7.6(1810)安装
- echarts-箱线图(盒须图)
- Python - 列联表的独立性检验(卡方检验)
- 搜狐首页出现一个硕大的错别字
- PC客户端软件的安装和卸载测试知识点
热门文章
- JAVA 即时网络通信我的服务器
- 自定义 Web 服务器控件
- ubuntu sun-java-jdk(zhuan)
- qt project settings被禁用解决方案
- 【白皮书分享】2022年中国品质直播选型与应用白皮书.pdf(附下载链接)
- 【白皮书分享】2020全球数字治理白皮书.pdf(附下载链接)
- ubuntu下修改用户的默认目录
- makefile:5: *** missing separator. Stop.
- 大神干货:算法高手郭大顶级经验分享助你轻松通过初赛!
- 机器学习算法总结之聚类:K-means