草庐IT

abstraction

全部标签

java - Spring 安全警告 : Class AuthorityUtils is abstract?

自从迁移到SpringSecurity3.2.5.RELEASE和Spring4.1.1.RELEASE后,我们在Eclipse(Luna)中收到SpringBeanValidation警告。确切的警告是:“org.springframework.security.core.authority.AuthorityUtils”类是抽象的这是这个Spring文件的header:配置中有问题的部分如下(这意味着如果我删除此部分,错误就会消失。具体来说,如果我删除springsecurity:authentication-provider节:关于这个问题的根本原因有什么想法吗?我们的项目无法忍

java - java中的抽象与抽象

我是一名java开发人员,对面向对象的概念有很好的理解(或者,我可能是这样想的)。现在我正在学习设计模式(来自Headfirstdesignpatterns)。我一直在阅读有关OOPS概念抽象的内容以简要了解它,并且阅读更多有关它的内容使我比以前更加困惑。据我理解,抽象是指隐藏程序的内部细节,同时将接口(interface)暴露给其他程序员,而无需担心内部细节。但是,我不明白抽象类如何适应这个抽象概念,抽象类要求我实现抽象方法,在java中使用抽象类的抽象在哪里。我觉得,可以实现抽象的一种方法是通过私有(private)构造函数并要求类的用户使用工厂方法来获取类的对象,您可以在其中实现

java - 为什么 abstract 和 strictfp 关键字不能在方法声明中一起使用的原因?

我正在阅读katherinesierra的SCJP。我明白abstract和final关键字不能一起使用,因为正如书中所解释的那样,它们相互矛盾。但是,我不明白为什么strictfp和abstract关键字不能一起使用。我还不知道strictfp关键字在Java中究竟是如何工作的。在我看来,可以声明一个抽象的strictfp方法,拥有一个子类,并以“strictfp方式”实现该方法。这些关键字不能很好地搭配在一起的原因是什么?编辑我仔细检查了这本书,上面肯定写着Becauseinterfacemethodsareabstract,theycannotbemarkedfinal,stri

java - 在 Java 中寻找 "consumer that returns value"抽象

在Java8+中是否有针对返回值的消费者的内置或强大的第三方抽象?P.S.对于延迟执行,它也可能返回Future。更新。功能界面具有完美的句法匹配,但需要考虑语义。在这种情况下使用函数显然违反了不要改变外部状态的约定。怎么处理? 最佳答案 您可能正在寻找Function-界面。它是通用的,接受一个参数,同时返回一个值。它可以用于lambda表达式,例如映射:Integerinput=1;FunctionmyMapping=a->a*2;IntegermyInt=myMapping.apply(input);//myInt==2看看j

Java 7 但不是 Java 6 : "is not abstract and does not override abstract method"

谁能解释为什么这在JDK1.6中编译,但在JDK1.7中却没有,我从中得到了错误消息:java:ExampleisnotabstractanddoesnotoverrideabstractmethodcompareTo(java.lang.Object)injava.lang.Comparable?importjava.util.concurrent.*;publicclassExampleimplementsScheduledFuture{@OverridepubliclonggetDelay(TimeUnitunit){return0;}@Overridepublicintcomp

Java:将方法调用存储在数组中并稍后执行?

我环顾四周,但找不到我要找的东西。我要做的是我定义了一个类,它表示JPanel中的一个区域,您可以通过创建指定大小的bufferedImage来绘制它,并将该图像图形用于doubleBuffer到JPanel,然后将该区域作为图像绘制到父JPanel,本质上是创建面板区域,而无需处理依赖于所有面板接触边界的javax疯狂的面板组织逻辑。这本质上是图形小部件的图形上下文,可以移动/调整大小等,类似于视频游戏UI。我想做的是我希望能够在图形类中存储对绘制操作的方法调用,包括参数。这样做的目的是让我可以在运行时或在源代码中加载已经指定参数值的方法,这些方法可以在不破坏封装的情况下调用,因为就

java - Java 中的抽象?

今天听friend说,封装不仅实现了信息隐藏,还实现了抽象。它是如何实现的?publicclassemployee{privateStringname;privateintid;publicvoidsetName(Stringname){this.name=name;}publicStringgetName(){returnname;}}上面的例子实现了封装,我允许类访问我的公共(public)方法而不是私有(private)成员,但是这里的抽象在哪里出现?谁能以一种清晰的方式向我解释抽象。 最佳答案 有两种不同的东西,信息隐藏和抽

java - 为什么在runnable接口(interface)中运行用abstract关键字定义的方法

这个问题可能很愚蠢,但我不小心检查了java源代码,runnable接口(interface)中的run方法是用abstract关键字定义的。但是根据接口(interface)定义,接口(interface)中的所有方法默认都是抽象的。然后我很困惑为什么Runnable接口(interface)特别有run方法的抽象关键字。我检查了其他接口(interface),如map、list等,但没有人有abstract关键字。请给我一个想法,为什么它在java源代码中是这样写的。publicabstractvoidrun();谢谢 最佳答案

java - 我应该扩展 ArrayList 以添加不为空的属性吗?

我想将对象集合添加到arrayList中,前提是特定属性不为null。我正在考虑扩展ArrayList并在子类中实现检查。另一种方法是在将属性放入Arraylist之前检查属性,但这意味着,如果我需要根据逻辑将对象添加到arraylist,我将不得不分散if检查每个地方。我想知道您对此有何看法……仔细想想,这是否有点矫枉过正? 最佳答案 装饰器模式我实际上建议使用有据可查的Decorator包装ArrayList图案。您只需将ArrayList包装在另一个List实现中,该实现委托(delegate)了大部分方法但添加了验证逻辑:p

java - 如何创建一个 "abstract field"?

我知道java中不存在抽象字段。我还读了thisquestion但提出的解决方案无法解决我的问题。也许没有解决方案,但值得一问:)问题我有一个抽象类,它根据其中一个字段的值在构造函数中执行操作。问题是这个字段的值会根据子类而改变。我该怎么做才能对子类重新定义的字段的值进行操作?如果我只是“覆盖”子类中的字段,则操作是在抽象类中的字段值上完成的。我愿意接受任何确保操作将在子类实例化期间完成的解决方案(即将操作放在构造函数中每个子类调用的方法中不是有效的解决方案,因为有人可能会扩展抽象类而忘记调用该方法)。此外,我不想将字段的值作为构造函数的参数。是否有任何解决方案可以做到这一点,还是我应