Itext7将公共方法移到受保护的位置

问题描述 投票:-2回答:1

我正在从itext v5迁移到v7,发现PdfSignatureAppearance类已将其方法setSignDate()public更改为protected。我找不到为什么有必要的原因? (我知道受保护的方法只能在继承的类或同一包中使用)。

  1. 我是否缺少一些Java的良好设计模式?

  2. 我应该使IpdfSignatureAppearance继承PdfSignatureAppearance并调用实际函数

v5 https://api.itextpdf.com/iText5/5.5.13/

v7 https://api.itextpdf.com/iText7/java/7.0.4/

java oop private itext7 protected
1个回答
3
投票

iText 5到iText 7进行了重大改进,即使iText 7中的许多类仍具有从iText 5获知的名称,功能也可能已发生很大变化或在类之间移动。

例如,在当前情况下,该方法在带有注释的提交ba907ff8e40de9457ac08a2138a9a9732b6c7d68中已成为2015-10-29 09:05:58的protected

重构签名模块。

将与实际签名相关的代码移到单独的类(PdfSigner)中。删除了未使用的方法。

确实,如果您需要在iText 7中设置签名时间,现在可以使用其公共PdfSigner方法在关联的setSignDate实例中进行设置;该方法依次调用PdfSignatureAppearance.setSignDate

© www.soinside.com 2019 - 2024. All rights reserved.