java 重载 参数子类_java - Java中带有子类参数的函数重载 - 堆栈内存溢出
这个问题已经在这里有了答案:
我有一个扩展了另一个类的类(在这种情况下,这是一个例外):
public class NewTypeException extends Exception {
private String exceptionField;
public String getExceptionField() {
return exceptionField;
}
public void setExceptionField(String exceptionField) {
this.exceptionField = exceptionField;
}
public NewTypeException(String cause, String reason) {
super(cause);
exceptionField = reason;
}
}
还有另一个类(为方便起见,我们称之为PrintUtil )具有两个具有相似签名的方法,唯一的区别是Exception类型更改为子类:
void doStuff(Exception ex) {
System.out.println(ex.getMessage());
}
void doStuff(NewTypeException ex) {
System.out.println("New Type Exception");
System.out.println(ex.getExceptionField());
System.out.println(ex.getMessage());
}
在我的代码的很多地方,我有一堆
try {
// code
} catch (Exception ex) {
printUtil.doStuff(ex);
}
添加此新的异常类型后,我想让此行根据参数调用最具体的方法。 但是,似乎在我测试此方法时,即使运行时类型适合其他方法(例如NewTypeException),也只会将方法用于Exception 。 除了替换数百个部分之外,是否有其他方法可以做到这一点
try {
// code
} catch (Exception ex) {
printUtil.doStuff(ex);
}
同
try {
// code
} catch (NewTypeException ex) {
printUtil.doStuff(ex);
} catch (Exception ex) {
printUtil.doStuff(ex);
}
? 这似乎是一种真正基本的OOP语言应该可以完成的工作...
java 重载 参数子类_java - Java中带有子类参数的函数重载 - 堆栈内存溢出相关推荐
- java打印空白页_java - DocPrintJob在随机主机上打印空白页 - 堆栈内存溢出
我在各种主机和打印机上打印包含某些标签的PDF时遇到问题. 在某些主机上,我的应用程序打印了许多空白页,但在其他主机上,一切正常. 我不知道为什么. 我没有任何空异常或其他东西. 在装有Linux和带 ...
- aws java mysql_java - AWS EC2 / MySql - spring boot无法从datasource确定jdbc url - 堆栈内存溢出...
我有一个简单的Spring Boot应用程序,我试图在基于Amazon AMI的Amazon EC2实例上部署. 它使用MySql数据库(版本8.0.15). 我在AWS上创建了数据库,当我从本地系统 ...
- android消息发送字符串,android - 从Android客户端通过HTTP在HL7消息中发送base64字符串时遇到错误 - 堆栈内存溢出...
我正在android客户端(API 17)中使用HL7消息,并使用Hapi库生成和解析HL7消息.当我传输小的字符串值时,该消息工作正常. 但是我必须通过Http将图像发送到HL7服务器,为此,我正在 ...
- java soap附件_java - 附件在SoapUI中工作,但在Java中不能使用SAAJ API吗? - 堆栈内存溢出...
我能够使用SoapUI附加一个完全相同的SOAP Request的zip文件,但不能使用SAAJ Api的Java. 这是我在SOAPUI和JAVA中使用的SOAP请求: projectName ci ...
- java 解析数据包_java - 如何在Java中正确解析TCP数据包? - 堆栈内存溢出
我目前有一个简单的TCP服务器,该服务器调用一个函数,并在每个新的传入数据包上以字节数组的形式将二进制TCP有效负载传递给它,解析它的正确方法是什么? 我试图通过将其切成不同的字节数组并分别进行处理来 ...
- java ftp 关闭连接_java - 使用Java Apache FTPClient进行FTP TLS获取“握手时远程主机关闭连接”[重复] - 堆栈内存溢出...
我在Windows 10 64x上为FTP TLS(org.apache.commons.net.ftp)运行了一个Java(1.8)程序: FTPSClient ftpClient = new FT ...
- java 图片有损压缩_java - 用有损jpeg压缩多页tiff图像 - 堆栈内存溢出
将图像从16位减少到8位. 假设您有一个byte []变量plane16,在其中您有图像的所有像素. 注意 :我的byte [] plane16从16位图像获取数据,但是byte为8bit = 1by ...
- java服务器返回错误码,java - java.io.IOException:服务器返回URL的HTTP响应代码:409 - 堆栈内存溢出...
我正在使用某些应用程序的API下载文档. 问题是,当我尝试解析inputStream时,它将引发响应代码409异常. 但是最大的问题是它有时会抛出此异常. 此异常的原因是什么? 这是我的代码: URL ...
- java结果写入html,java - 将长字符串写入HTML文件,InputStream vs FileWriter vs BufferedReader - 堆栈内存溢出...
我对执行此操作的最佳方法有些困惑. 我在SO上看到了很多示例,许多答案有不同的解决方案. 因此,我想知道将非常长的字符串写入新的html文件的最有效方法(即,从字符串中生成html文件). 并且真的可 ...
- java mapper.readtree_java - 杰克逊的readValue和readTree:何时使用哪个? - 堆栈内存溢出...
我刚刚开始使用Jackson JSON库. 杰克逊是一个非常强大的库,但它有一个非常广泛的API. 很多事情可以通过多种方式完成. 这使得很难在杰克逊找到自己的方式 - 如何知道什么是正确/最好的做事 ...
最新文章
- 熬夜之作:一文带你了解Cat分布式监控
- oracle 基础1
- 【职场】税前110万
- think.class.php下载,PHP_ThinkPHP实现将本地文件打包成zip下载,首先,将FileToZip.class文件放到T - phpStudy...
- C语言科技感图片,科技感与运动范十足,几何C黑棚图曝出,年轻消费者又多了新选择...
- Python识别表格图_使用Python究竟可以做什么?下面是Python的3个主要应用
- 如何通过js处理相同时间的信息整合到一起的问题
- cetk使用方法--nand flash测试
- python把485读回来的转为位_我能用Python读取从计算机上接收到的Modbus RS485数据吗?...
- npm 依赖下载报错 Hostname/IP does not match certificate‘s 相关 解决方案
- axure键盘弹出_AXURE教程:手机键盘
- mysql 删除表的方法_MySQL 删除表的三种方式
- 不用 PLC与变频器通信程序 不用 三菱PLC与变频器通讯程序不经过 PLC与变频器通信
- 华硕笔记本的 Ubuntu 18.04 安装 nvidia 显卡驱动并支持 HDMI 输出
- 【超简单】用python写给女朋友的词云
- 社区疫情防控的微信公众号文章排版必备素材集锦
- Xbox手柄转子马达的控制运用机制原理
- GeneXus学习记录——环境搭建
- 十大著名的思想实验(程序员应该会读喜欢这些)
- linux是专业的gis系统,首款支持红旗Linux操作系统的GIS基础平台问世
热门文章
- There was a problem confirming the ssl certificate ……
- 扩展typeof来判断js变量的类型
- Blender灯光照明与渲染视频教程 Skillshare – Blender: Product rendering for beginners
- 读书:一百个 终身受益的 思维模型(持续更新)
- 二分法:查找区间search for a range
- [转帖]tar高级教程:增量备份、定时备份、网络备份
- 程序员跳槽全攻略——读书笔记
- 【原创】ListView快速滚动至新添加一行(自动滚动)
- CI流水线配置文件参数详解(一)
- OpenCV 【一】—— OpenCV中数组指针、图像分块计算、指针取像素值与MatToEigen方法,内存对齐