小编Mik*_*cer的帖子

从超类调用子类方法

我是一个介绍性的java课程,我们刚开始学习继承.我正在开展一项任务,要求我们创建一个名称和年龄的"Pet"超类; 和三个子类,每个子类都有自己独特的特性(我选择了"狗","猫"和"鸟").在我们构建了所有这些之后,我们将创建一个Main类来测试所有内容,这就是我遇到问题的地方.我试图在内部调用get这些独特特征的方法Main,但它似乎只找到超类中的方法.

这是Main类:

public class Kennel {
    public static void main(String[] args) {
        // Create the pet objects
        Pet cat = new Cat("Feline", 12, "Orange");
        Pet dog = new Dog("Spot", 14, "Dalmation");
        Pet bird = new Bird("Feathers", 56, 12);

        // Print out the status of the animals
        System.out.println("I have a cat named " + cat.getName()
                + ". He is " + cat.getAge() + " years old."
                + " He is " + cat.getColor()
                + "When he …
Run Code Online (Sandbox Code Playgroud)

java inheritance

19
推荐指数
1
解决办法
5万
查看次数

如何防止IntelliJ IDEA在重命名重构期间删除未使用的包?

在Intellij IDEA中,当我使用Rename重构工具重命名方法时(它基本上替换了方法的旧名称的新名称),IDEA还会从文件中删除未使用的导入,其中替换方法名称.

这不是我想要做的.即使我想删除这些冗余的导入,我想在整个项目中以单独的操作执行它,因此它可以是一个单独的提交.

如何禁用此行为?

我使用的版本是14.1.3 Ultimate.

已有类似的问题如何防止IntelliJ IDEA删除未使用的包?,但那里提到的选项(Optimize imports on the fly)与我的问题无关.实际上我没有检查它.

更新:现在我觉得唯一的解决方案是在应用其他重构工具之前删除所有未使用的导入.

java ide intellij-idea

17
推荐指数
1
解决办法
396
查看次数

是否可以使用带有"Content-Disposition:attachment"标题的source作为<img>的src值?

有一个带有端点的3d party API,http://endpoint/image_id它返回带有此类标头的响应:

content-disposition:attachment; filename=image.png
content-length:27774
content-type:image/png
Run Code Online (Sandbox Code Playgroud)

根据MDN文档,

在常规HTTP响应中,Content-Disposition响应标头是一个标头,指示内容是否应 在浏览器中内嵌显示,即作为网页或作为网页的一部分显示,还是作为附件显示下载并保存在本地.

但是,我必须像这样使用它:

<img src="http://endpoint/image_id">
Run Code Online (Sandbox Code Playgroud)

在Chrome中,它适用于我,我显示的图像.但我怀疑它.可以吗?

html google-chrome image http content-disposition

11
推荐指数
1
解决办法
1932
查看次数

Spring MVC:uri参数值中未知语言代码的回退

我试图构建我的第一个支持i18n的Spring MVC 4应用程序,并且正在思考如何在用户将语言uri参数操作到非现有或支持的语言环境时如何使用默认/回退语言环境例如 http:// localhost .DE?LANG = ABC

我正在使用代码

@Bean
public LocaleResolver localeResolver() {
    SessionLocaleResolver sessionLocaleResolver = new SessionLocaleResolver();
    sessionLocaleResolver.setDefaultLocale(Locale.GERMAN);
    return sessionLocaleResolver;
}
Run Code Online (Sandbox Code Playgroud)

一般情况下,如果我第一次打开网址,但它似乎不适用于我描述的情况.我知道有一种机制可以使用默认的消息属性文件,但我想为这种情况设置一个默认/回退区域设置.我是否需要实现自定义过滤器?

java spring spring-mvc internationalization

10
推荐指数
2
解决办法
941
查看次数

Chrome Devtools:所有手表不可用

我在使用 Swagger-ui 时遇到错误,并尝试使用 Chrome 内置 JavaScript 调试器找出原因。

我设置了一些手表,但奇怪的是,<not available>输出而不是它们的值,尽管它们应该在当前范围内。

这是 Devtools 的屏幕截图:

这是 Devtools 的截图

我究竟做错了什么?

javascript debugging scope google-chrome google-chrome-devtools

10
推荐指数
0
解决办法
4340
查看次数

捕获多个异常时的特定和相同操作

我想以不同的方式处理两种不同类型的异常,然后对两种异常类型进行相同的操作.如何用Java做到这一点?

以下代码显示了我想要做的事情,但它不正确,因为一个例外无法捕获两次.

这个的正确语法是什么?

try {
    // do something...
} 
catch (ExceptionA e) {
    // actions for ExceptionA
}
catch (ExceptionB e) {
    // actions for ExceptionB
}
catch (ExceptionA | ExceptionB e) {
    // actions for ExceptionA & ExceptionB
}
Run Code Online (Sandbox Code Playgroud)

java exception-handling try-catch java-7

9
推荐指数
1
解决办法
2943
查看次数

将多个任意注释合并为一个

在我的代码中,我将使用相同的注释集(有一个用于Hibernate,有些用于Jackson)有很多这样的getter:

@Transient
@JsonSerialize(using = LocalDateTimeSerializer.class)
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = BaseEntity.JSON_DATETIME_FORMAT)
public LocalDateTime getCreatedDateDT() {
    return DateTimeUtils.klabTimestampToLocalDateTime(getCreatedDate(), createdDateDT);
}
Run Code Online (Sandbox Code Playgroud)

我希望通过实现我自己的注释来最小化重复,这将意味着所有这四个一起,如下所示:

@TransientLocalDateTime
public LocalDateTime getCreatedDateDT() {
    return DateTimeUtils.klabTimestampToLocalDateTime(getCreatedDate(), createdDateDT);
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做?这甚至可能吗?

更新 感谢Konstantin Yovkov,现在我知道,我可以将所有杰克逊注释合二为一,但这是因为杰克逊的注释处理器能够识别出这样的技巧.我想知道是否有可能让任何注释处理器这样做?在我看来,事实并非如此.

java annotations hibernate jackson

7
推荐指数
1
解决办法
1427
查看次数

防止 Glassfish 使用自己版本的库而不是项目中的库版本

Glassfish 在其目录中存储了大量第三方库modules。令我惊讶的是,如果我的项目使用那里存在的库,Glassfish 将从那里提供它,而不是我在 WAR 文件中打包的正确版本。

这会导致许多错误。例如,我使用jackson-datatype-joda版本2.6.3,它需要jackson-databind相同的版本,并且它包含在我的项目中。但 Glassfish 用 2.3.2 版本替换了该软件包,从而导致了此问题

如何防止 Glassfish (4.1) 用其他版本替换我使用的库?

java glassfish pom.xml glassfish-4

6
推荐指数
1
解决办法
3217
查看次数

高度:当父 div 只有最大高度时 100% 不起作用

无法绕过它!我尝试使父 div 不超过窗口的 80% 高度max-height,而子 div 将所有父高度减去一些东西。

但是height父母的百分比财产对孩子根本不起作用,除非我给父母height财产。

这是为什么?

这是我的简化小提琴:https : //jsfiddle.net/mbatcer/m2ohnsf5/ 为什么内部 div 不尊重父高度并超出容器?

HTML:

<div class="container">
  <div class="inner">
    <img src="http://via.placeholder.com/70x300">
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.container {  
  background: blue; 
  padding: 10px; 
  max-height: 100px; 
}

.inner { 
  height: 100%;
  width: 70px;
  overflow: hidden;
}
Run Code Online (Sandbox Code Playgroud)

html css google-chrome

5
推荐指数
1
解决办法
1万
查看次数

postMessage 期间 Microsoft Edge 中的 SCRIPT5022 语法错误

window.parent.postMessage(JSON.stringify(data), window.origin)
Run Code Online (Sandbox Code Playgroud)

在 Microsoft Edge 中出现语法错误,在 Chrome 和其他地方工作正常。

这就是我在控制台中看到的所有内容:

这就是我在控制台中看到的所有内容

javascript postmessage microsoft-edge

5
推荐指数
1
解决办法
2797
查看次数