Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否可以在没有函数的情况下调用函数';她叫什么名字?_Java - Fatal编程技术网

Java 是否可以在没有函数的情况下调用函数';她叫什么名字?

Java 是否可以在没有函数的情况下调用函数';她叫什么名字?,java,Java,我试着在我的代码中调用一个函数,但只得到一个空白屏幕 class Addition { public void add(){ int a=20; int b=30; int c=a+b; System.out.println("Addition of a and b is: " +c); } } public class Methodcall { public static void main(String args[]) {

我试着在我的代码中调用一个函数,但只得到一个空白屏幕

class Addition
{
    public void add(){
    int a=20;
    int b=30;
    int c=a+b;
    System.out.println("Addition of a and b is: " +c);
    }
 }
public class Methodcall
{
    public static void main(String args[])
    {
        Addition call=new Addition();

    }
}
我希望增加a&b
但我得到的只是一个空白屏幕

代码无法实现您期望的功能:

 Addition call=new Addition();
 call.add();
main
函数中,您只实例化了
Addition
对象。将其视为创建对象:

Addition call = new Addition();
如果您想让它做一些事情,在您的情况下添加
a
b
并打印结果,您需要调用该方法:

call.add();

正如其他人所提到的,您可以将其放入构造函数中,但这不是构造函数的目的。

不,这是不可能的。实例化Addition类的实例后,必须调用其add方法以获得所需的行为。您可以将逻辑移动到构造或,但这不是它的用途。将add()中的代码放置到Addition的构造函数中,然后您将看到a&b的添加,但最好不要这样做。不,这是不可能的,因为显而易见的原因-假设您在类中有更多的方法,例如简单地
add
div
,例如,
。那么,初始化之后如何使用
Addition call=new Addition()(创建新实例)程序是否知道您假定它将使用哪种方法?理论上,您可以创建自定义构造函数并直接在那里进行计算,或者在构造函数中直接调用此方法,然后它将按照您编写的方式工作,但是
这是一个非常糟糕的做法,在这种情况下您应该避免它(这不是它的目的)顺便说一句,您可以创建
静态
方法,然后,您不需要创建类的实例——它在所有实例中都是“共享”的,应该用于不修改任何类变量的静态对象,等等。。(简化)-可以调用静态方法(一旦它就位),如
Addition.add()
directly@Seelenvirtuose是的,我只是举个例子,没有警告,你永远不应该给出这样的建议(或例子),尤其是对明显的初学者@Seelenvirtuose yes将来会忽略这一点