输入java - 准备面试

时间:2014-03-19 17:51:13

标签: java

作为一名初级Java开发人员,我将接受一份面试。我没有 编程的专业经验,这意味着我从未做过任何 申请某人。我被要求为此做准备 采访一些例子:一种计算器应用。他们提出了两个条件:

  1. API应为:

    public int calculate(String action, int a, int b)
    
  2. 示例:

  3. 输入:乘以5 4 输出:20

    API和输入/输出的含义是什么?我总是将简单数据作为String [] args输入我应该像主要类一样 这个(主要类我的意思是与用户沟通的类)?

    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);
       }
    }
    

    其他输入和输出方法(如Scanner,InputStream,Console)怎么样?如果你进行这样的采访,你会期待什么?

3 个答案:

答案 0 :(得分:1)

只需实施方法public int calculate( String action, int a, int b )

API代表应用程序编程接口。它或多或少是可以在别处使用的可用函数,方法和类。您不必担心数据如何输入程序,可以硬编码,从用户读取,从文件读取等。

另请注意,很多时候,由于这些看似简单的问题,他们正在寻找安全的代码。这就是它对错误输入的反应,例如calculate( "invalid operation", 2, 1 );在这种情况下,由于你不能返回错误代码,你可能想要抛出某种Exception

答案 1 :(得分:1)

API(WikiPedia def)不仅在Java中与" main"相关联。方法,除了(可能),如果您正在开发CLI(命令行界面)工具。 API是应用程序或组件中第三方可用的公共服务,类和方法集。

所以,你的方法似乎是正确的,因为作为CLI工具,它适合他们要求的接口,但是如果你只是用这个方法实现一个类,calculate(...)也是正确的,在这种情况下,把它看作是a"数学库"需要适合该API。

我认为在这种情况下重要的是如何实现该方法,而不是API概念。

答案 2 :(得分:1)

API代表应用程序编程接口,它只是您的应用程序应该为其他应用程序提供的方法。在任何情况下,您的main方法只应用于测试您的API。如果我正在采访你,我希望通过其输入(例如两个数字)和一个使用main方法测试它的类,使用add,multiply等方法进行完整的类实现。