gpt4 book ai didi

java - 我们可以在Java中调用函数内的函数吗?

转载 作者:行者123 更新时间:2023-12-01 06:30:04 26 4
gpt4 key购买 nike

如果我们将一个方法声明为静态方法,那么无需实例化,我们就可以在类体内的任何位置调用该方法。

如果我们不将方法声明为静态,则可以实例化一个对象并调用该方法。

现在如果我们不将方法声明为静态并且也不实例化,我们可以在函数中调用函数吗?

编辑:

我现在明白了,我的预感是对的。除非有静态或对象实例化,否则我们不能在函数内调用另一个函数。

但是在 Java 小程序中,我记得看到一个函数被另一个函数调用。

import javax.swing.*;
import java.awt.Container;

public class MethodCall extends JApplet
{
public void init()
{
String output = "";
JTextArea outputarea=new JTextArea(10,20);
Container c = getContentPane();
c.add(outputarea);

int result;
for(int x=1;x<=10;x++)
{
result = square(x);
output += "Square of " + x + " is " + result + "\n";
}//end of for loop

outputarea.setText(output);
}//end of init()

public int square(int y)
{
return y*y;
}//end of square()

}//end of class MethodCall

参见 square() 函数

最佳答案

您的问题不太清楚,但这里有一个快速摘要:

class A {
public static void foo() {
bar(); // illegal, no object
foo(); // legal, implicit
A.foo(); // legal, explicit
A a = new A();
a.bar(); // legal - we call a non-static function on an object
}

public void bar() {
bar(); // legal, implicit
this.bar(); // legal, explicit
foo(); // legal, implicit
A.foo(); // legal, explicit
}
}

请注意,在这种情况下,对函数本身的调用是无限递归的。

关于java - 我们可以在Java中调用函数内的函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5879733/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com