草庐IT

abstract-methods

全部标签

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

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

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

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

Java 错误 - "invalid method declaration; return type required"

我们现在正在学习如何在Java中使用多个类,并且有一个项目要求创建一个包含radius的类Circlecode>和diameter,然后从主类中引用它来查找直径。此代码继续收到错误(标题中提到)publicclassCircle{publicCircleR(doubler){radius=r;}publicdiameter(){doubled=radius*2;returnd;}}感谢您的帮助,-AJ更新1:好的,但我不应该将第三行publicCircleR(doubler)声明为double,对吧?在我正在学习的书中,示例没有这样做。publicclassCircle{//Thisp

Java 反射 : Checking the type of the method parameter at runtime

我需要检查方法第一个参数的类型是List>或不。有人能提出比将它与字符串进行比较更好的解决方案吗?Methodm=Foo.class.getMethod("m1",List.class);if(m.getGenericParameterTypes()[0].toString().equals("java.util.List>")){...}我的意思是这样的:List.class.isAssignableFrom((Class)((ParameterizedType)m.getGenericParameterTypes()[0]).getRawType()));检查它是否是一个列表。但是

java - 为什么 Eclipse 将接口(interface)方法标记为 public abstract?

当使用Eclipse的“ExtractInterface”重构时,它会默认声明方法publicabstract。为什么?接口(interface)上的public修饰符是完全多余的,abstract在接口(interface)声明上似乎也毫无意义。 最佳答案 这些关键字确实是多余的。我个人不会在这种情况下使用它们,但我明白为什么有人可能更愿意包括它们。JLSexplicitlydiscourages这种做法:Itispermitted,butdiscouragedasamatterofstyle,toredundantlyspeci

java - "cannot find symbol: method"但声明了方法

在我的驱动程序中,这一行给我cannotfindsymbol错误,我不知道为什么。该方法在SavingsAccount类中明确定义,我可以在我的驱动程序中引用所有其他方法但不是那个,我尝试将类型更改为double,等等,但仍然无法正常工作。Accountacct2=newSavingsAccount(name);acct2.calculateBalance();SavingsAccount类继承自Account类:publicclassSavingsAccountextendsAccount{privatefinalshortminBalance=0;privatedoubleover

java - 从 Eclipse 导出 jar 时出现 "Could not find main method from given launch configuration"错误

我使用Eclipse作为我的IDE开发了我的程序。我曾经使用File|Export|可运行JAR文件用于为客户端创建dist构建的选项。我在eclipse中使用“运行”或(经常)“调试”按钮处理项目(因此我为项目配置了有效的主要方法)。不幸的是,当我昨天创建构建时,我在尝试运行应用程序时遇到了以下错误:FailedtoloadMain-ClassmanifestattributefromMy.jar然后当我重新尝试导出时,我在导出日志中发现了以下问题:Couldnotfindmainmethodfromgivenlaunchconfiguration我不知道是什么导致了这个问题。我认为

java - 警告 : A HTTP GET method, public javax.ws.rs.core.Response... 抛出 org.codehaus.jettison.json.JSONException,不应消耗任何实体

我有以下GET方法,它无法将结果发送回客户端。/*@GETheredefines,thismethodwillprocessHTTPGETrequests.*/@GET@Path("/test/{name}/{status}")@Produces("application/json")publicResponseName(@PathParam("name,status")Stringname,Stringstatus)throwsJSONException{Stringtotal="100";...Stringresult=""+jsonObject;returnResponse.st

Java 8 : unit-testing a method that returns a Function object

我正在尝试为返回Function的方法编写Java8单元测试;像这样的东西:classMyObject{publicFunctiongetFunction(){...}}在我的单元测试中,我创建了一个示例对象并调用了getFunction()并想将其与不适用于org.junit.Assert.assertEquals的预期功能进行比较:@TestpublicvoidgetFunction_returnsFunction(){finalMyObjectobject=newMyObject(..);finalFunctionexpectedResult=...;//thisdoesnotw

java - <init> 和 (Native Method) 是什么意思?

关于java.io.FileStream.open方法,这些符号表示什么以及(Native方法)表示什么?Exceptioninthread"main"java.io.FileNotFoundException:line23(Nosuchfileordirectory)atjava.io.FileInputStream.open(NativeMethod)atjava.io.FileInputStream.(FileInputStream.java:135)atjava.io.FileInputStream.(FileInputStream.java:95)atjava.io.File