首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java方法Stub

Java方法Stub
EN

Stack Overflow用户
提问于 2016-04-25 19:33:15
回答 2查看 14.3K关注 0票数 0

老师提出以下问题:

假设以下内容是从主方法调用的,则编写此调用的方法存根:String course = "band";int year = 2016;printRoster(course,year) 假设以下内容是从主方法调用的,则编写此调用的方法存根:String item = enterDescription();

由于没有其他信息,我对他编写方法存根的目的和意义感到有点困惑。我们将非常感谢您的帮助!

EN

回答 2

Stack Overflow用户

发布于 2016-04-25 19:40:53

方法存根(可能引用方法签名)由访问类型、返回类型、其他关键字、方法名称及其参数组成。例如,主方法的方法存根是:

代码语言:javascript
运行
复制
public static void main(String[])

您的老师要求您使用代码片段的上下文来确定方法存根的外观。例如,如果我有一个名为“这样”的方法:

代码语言:javascript
运行
复制
int num = getNum();

那我就知道:

1)这是主方法的内部,即static,因此getNum方法也必须是static

2) getNum方法返回一个int,因为它被分配给该类型的变量。

3)没有参数传递给getNum,因此它没有参数。

因此,我猜想getNum()的方法签名是:

代码语言:javascript
运行
复制
static int getNum()

这是因为我不知道getNum是否是publicprivate等等。

希望这能帮助你理解问题,自己解决问题。

票数 3
EN

Stack Overflow用户

发布于 2016-04-25 19:39:41

我假设他意味着您需要为代码中的调用编写一个方法存根:

代码语言:javascript
运行
复制
String course = "band";
int year = 2016;
printRoster(course, year);

还有..。

代码语言:javascript
运行
复制
String item = enterDescription();

所以..。

代码语言:javascript
运行
复制
private void printRoster(String course, int year) {
    // For example...
    System.out.println("Course: " + course);
    System.out.println("Year: " + year);
}

private String enterDescription() {
    // Mocked return
    return "foobar";
}

除非他的意思是把代码本身存根出来,然后.

代码语言:javascript
运行
复制
private void doSomething() {
    String course = "band";
    int year = 2016;
    printRoster(course, year);
}

private void doSomethingElse() {
    String item = enterDescription();
}

不过,我怀疑是前者。

如果方法是从静态上下文中调用的,那么它们也应该声明为静态的,除非要先实例化调用它们的对象。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36849499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档