关于java接口的问题

关于java接口的问题,java,ruby,Java,Ruby,假设我有以下ruby代码: def use_object(object) puts object.some_method end 而且,这将适用于任何响应某种方法的对象,对吗 假设存在以下java接口: interface TestInterface { public String some_method(); } 我是否正确地假设接口是java实现相同功能的方式(唯一的区别是参数的类型是TestInterface)?您是对的,只是不能在java接口中定义函数体,而只能在原型中

假设我有以下ruby代码:


def use_object(object)
  puts object.some_method
end
而且,这将适用于任何响应某种方法的对象,对吗

假设存在以下java接口:


interface TestInterface {
   public String some_method();
}

我是否正确地假设接口是java实现相同功能的方式(唯一的区别是参数的类型是TestInterface)?

您是对的,只是不能在java接口中定义函数体,而只能在原型中定义


接口是在Java中实现伪多重派生的唯一方法,因为普通的类派生只是简单的(只有一个父类)。

你是对的,只是不能在Java接口中定义函数体,只能在原型中定义


接口是在Java中实现伪多重派生的唯一方法,因为普通的类派生很简单(只有一个父级)。

Java接口定义了实现类必须提供的方法签名。JavaDoc非常详细地解释了这一切。

Java接口定义了实现类必须提供的方法签名。JavaDoc非常详细地解释了这一切。

在Java中,接口只能用于声明方法,而不能用于定义(实现)方法。只有类可以实现方法。但是类可以实现接口。例如,您可以使用适配器模式实现与在ruby中相同的功能。

在Java中,接口只能用于声明方法,而不能用于定义(实现)方法。只有类可以实现方法。但是类可以实现接口。例如,您可以使用适配器模式实现与在ruby中相同的功能。

不,中的接口没有实现。不过,您可以有多个实现

界面看起来更像:

interface TestInterface {
   public String some_method();
}
它可以在一个类中实现:

public class TestClass implements TestInterface {
   public String some_method() {
       return "test";
   }
}
也许有更多的类以不同的方式实现这个方法。实现接口的所有类都必须实现接口声明的方法


对于接口,您无法获得与Ruby示例中完全相同的结果,因为Java是静态类型的。

不,中的接口没有实现。不过,您可以有多个实现

界面看起来更像:

interface TestInterface {
   public String some_method();
}
它可以在一个类中实现:

public class TestClass implements TestInterface {
   public String some_method() {
       return "test";
   }
}
也许有更多的类以不同的方式实现这个方法。实现接口的所有类都必须实现接口声明的方法


对于接口,您无法实现与Ruby示例中完全相同的效果,因为Java是静态类型的。

是的,但前提是您要将“任何具有some_method()的内容”抽象为单独的概念。如果只有一个类具有某些_method(),则不需要指定接口,并且use_object()的参数将是该类


另外请注意,在Java中,我们使用camelCase而不是下划线分隔的名称。

是的,但只有当您想将“任何具有some_method()的内容”抽象为一个单独的概念时。如果只有一个类具有某些_method(),则不需要指定接口,并且use_object()的参数将是该类


另外,请注意,在Java中,我们使用camelCase而不是下划线分隔的名称。

看起来您正试图使用Java在Ruby中编程,您希望重新考虑使用该语言的习惯用法的方法。

看起来您正试图使用Java在Ruby中编程,您希望重新思考您的方法,以便更多地使用该语言的习惯用法。

我希望两种语言中的方法名称相同。我希望两种语言中的方法名称相同。