作为一名初级java开发人员,我将接受面试。我没有编程方面的专业经验,这意味着我从未为任何人提出过任何申请。我被要求准备面试的一些例子:一种计算器的应用。他们提出了两个条件:
输入:乘5 4输出: 20
API和输入/输出是什么意思?我总是将简单的数据输入为String[] args,是否应该有这样的主类( main类,我指的是与用户通信的类)?
class MainClass {
public static void main(String[] args){
String action = args[0];
int a = Integer.parseInt(args[1]);
int b = Integer.parseInt(args[2]);
SomeClass calculator = new SomeClass();
// Is this using of API?
int result = calculator.calculate(action, a, b);
System.out.println(result);
}
}其他输入和输出方法(比如扫描仪、InputStream、控制台)怎么办?如果你进行了这样的面试,你会期待什么?
发布于 2014-03-19 17:58:47
只需实现方法public int calculate( String action, int a, int b )。
API接口代表应用程序编程接口。它或多或少是可以在其他地方使用的可用函数、方法和类。您不必担心数据是如何输入到程序中的,它可以被硬编码、从用户读取、从文件中读取等等。
还要注意,很多时候,由于这些看似简单的问题,他们都在寻找安全的代码。这就是它对错误输入的反应,比如这个场景中的calculate( "invalid operation", 2, 1 );,因为您不能返回错误代码,所以您可能希望抛出某种类型的Exception。
发布于 2014-03-19 18:02:36
API (WikiPedia def)不仅在Java中与"main“方法相关,除非(可能)您正在开发一个CLI (命令行接口)工具。API是应用程序或组件中第三方可以使用的公共服务、类和方法的集合。
因此,您的方法似乎是正确的,因为作为CLI工具,它适合它们请求的接口,但是如果您只是用该方法实现一个类,那么在本例中,calculate(...)也是正确的,它是一个需要适应该API的“数学库”。
我认为,在这种情况下,重要的是如何实现该方法,而不是API概念。
发布于 2014-03-19 18:04:48
API代表应用程序编程接口,它只是应用程序应该提供给其他应用程序使用的方法。无论如何,您的主要方法应该只用于测试您的API。如果我采访您,我会期待一个完整的类实现,包括add、multiply等方法和它们的输入(例如,两个数字),还有一个类来测试它,使用一个主方法。
https://stackoverflow.com/questions/22514145
复制相似问题