草庐IT

hardware-interface

全部标签

java - 接口(interface) Java 1.8 中的具体方法

这个问题在这里已经有了答案:AredefaultsinJDK8aformofmultipleinheritanceinJava?(8个答案)VirtualExtensionMethodsinupcomingJava8release(5个答案)关闭9年前。在一次讨论中,我的一位friend告诉我具体方法将在java1.8接口(interface)中被允许然后当时我想到了一个问题,即如果它们被允许那么我们将如何区分方法。例如我有两个接口(interface)Animal.java和Pet.java,它们都有相同的具体方法,即eat()publicinterfacesAnimal{voide

java - 如果我在实现工厂模式时使用抽象类而不是接口(interface)。还会是工厂模式吗?

例如:http://www.tutorialspoint.com/design_pattern/factory_pattern.htm如果我更改抽象类Shape的接口(interface)形状,创建具体类来扩展Shape并使Shape工厂返回Shape抽象类类型化对象。它仍然是工厂模式吗? 最佳答案 我会同意。让我们看一下工厂方法模式的定义:thefactorymethodpatternisacreationalpatternwhichusesfactorymethodstodealwiththeproblemofcreatingo

java - 接口(interface)能否以某种方式阻止 lambda 表达式的实现?

背景我将以下接口(interface)作为API的一部分公开:publicinterfacePasture{/***@paramtThetimeofthevisit(asmeasuredfromoptimizationstartingpoint).*@paramtLastThetimeoftheprecedingvisit(asmeasuredfromoptimizationstartingpoint).*@returnTheexpectedrewardthatwillbereapedbyvisitingunderthegivenconditions.*/doubleyield(lon

java - 编译器不推断 System.out::println 功能接口(interface)

我有一个重载方法,它采用两个不同的功能接口(interface)作为参数(Runnble和Supplier)。System.out.println显然只兼容Runnable,因为它是一个void方法。然而编译器仍然声称调用是不明确的。这怎么可能?importjava.util.function.Supplier;publicclassGenericLambdas{publicstaticvoidmain(String[]args){wrap(System.out::println);//Compilererrorherewrap(()->{});//Noerrorwrap(System

java - gRPC 不为服务生成接口(interface),只生成服务类

我是gRPC的新手,遇到了这个问题:我创建了一个带有rpc服务定义的.proto。编译后我得到生成的源:所有消息都有一个实现接口(interface)的类。然而,服务本身并没有实现任何接口(interface)——它根本就没有生成。这就是我应该在我的服务器中实现的接口(interface)。我究竟做错了什么?我很确定gRPC文档没有提到这个问题。我的.proto服务:syntax="proto3";optionjava_multiple_files=true;optionjava_package="com.blah.my.rpc.api";optionjava_outer_classn

java - 编程接口(interface)和同步集合

这个问题与Java集合有关-特别是Hashtable和Vector-但也可能适用于其他地方。我在很多地方都读到过针对接口(interface)编程有多好,我100%同意。例如,在不考虑底层实现的情况下针对List接口(interface)进行编程的能力肯定有助于解耦和测试目的。对于集合,考虑到内部存储结构、随机访问时间等方面的差异,我可以看到ArrayList和LinkedList如何在不同情况下适用。然而,这两个实现可以在同一接口(interface)下使用……很棒。我似乎无法理解的是某些同步实现(特别是Hashtable和Vector)如何适应这些接口(interface)。对我来

java - 用作接口(interface)替代的内部类示例

我被告知,这激发了我对这个话题的好奇:JavaguiclassescanimplementhundredsofListenersandCallbacksandmanybooksteachyoutoimplementalltheseinterfacesinyourguiclass.Alternatively,theseaspectscanbeimplementedininnerclasses,somethodscalledbythatlistenersdonotgetmixedup.我想知道如何在没有内部类但有私有(private)类的ActionScript中执行此操作。但是,我不认为

java - 我们可以创建 Runnable 的对象作为它的接口(interface)吗

我看到一个示例代码,其中使用了newRunnable()并且它是匿名内部类。Runnablerunnable=newRunnable(){publicvoidrun(){intoption=(int)(Math.random()*4);switch(option){case0:x.a();break;case1:x.b();break;case2:y.a();break;case3:y.b();break;}}};感谢任何帮助。我是新手。 最佳答案 是的。我们可以。这就是所谓的匿名内部类。不仅Runnable,您还可以匿名创建任何接

java - 如何为现有代码记录List接口(interface)方法

我现有的代码库有时会使用ArrayList或LinkedList,我需要找到一种方法来在调用添加或删除时进行记录,以跟踪已添加或删除的内容。确保我已登录的最佳方法是什么?例如。ArrayListlist=newArrayList();list.add(123);和LinkedListanotherNewList=newLinkedList();anotherNewList.add(333);不确定我是否可以拦截add方法来实现此目的,或者创建实现java.util.List接口(interface)的重写类然后改用它。无论哪种方式,我都在寻找一个好的解决方案,它需要最少的干预并且最好不

java - 在接口(interface)扩展中指定泛型

当用另一个接口(interface)扩展一个接口(interface)时,我应该为泛型类型指定具体类型吗?我的意思是,如果我有一个接口(interface):publicinterfaceRepo{Collectionsearch(Stringparams);Tget(Stringid);}然后是一大堆特定的Repositories,比如ClientRepo、CustomerRepo等......在什么时候指定类型T是否合理扩展此接口(interface),例如:publicinterfaceClientRepoextendsRepo{}publicinterfaceCustomerR