有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java:在主类中添加类函数

我是JAVA新手。我想创建一个类并在其中编写函数。然后我想在main类中使用该函数

import java.util.Scanner;

public class multi_fun {
    public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);
        int a, b, c;

        System.out.println("Enter 1st number: ");
        a = scan.nextInt();
        System.out.println("Enter 2nd number: ");
        b = scan.nextInt();
        Addition obj = new Addition();
        c = obj.add(a,b);
        System.out.println("The sum is "+c);
        scan.close();
    }
}
class Addition{
    public int add (int a, int b)
    {
        return(a+b);
    }
}

共 (4) 个答案

  1. # 1 楼答案

    出现此错误的原因是同一文件夹中已存在另一个名为Addition的文件。因此,当我编写一个同名的类并试图创建一个对象时,它给出了错误消息,因为参数不同

    谢谢大家的帮助

  2. # 2 楼答案

    import java.util.Scanner;
    
    public class multi_fun {
    
        public static void main(String[] args) {
    
            Scanner scan = new Scanner(System.in);
            int a, b, c;
    
            System.out.println("Enter 1st number: ");
            a = scan.nextInt();
            System.out.println("Enter 2nd number: ");
            b = scan.nextInt();
            add(a,b);
            System.out.println("The sum is "+c);
            scan.close();
    
        }
    
    }
    
    
    public static int add (int a, int b)
    {
        return(a+b);
    }
    
  3. # 3 楼答案

    根据你在评论中提到的错误信息,我认为问题在于:

    Exception in thread "main" java.lang.NoSuchMethodError: Addition.add(II)I at multi_fun.main(multi_fun.java:15)

    似乎您正在将类Addition声明放在multi_fun.java程序的同一源文件中

    您应该创建一个名为Addition.java的java类文件,并将类代码放入其中:

    class Addition{
        public int add (int a, int b)
        {
            return(a+b);
        }
    }
    

    之后,它应该可以正常工作,没有任何错误

    更新

    你可以检查这个Answer,它解释了'java.lang.NoSuchMethodError: main Exception in thread “main”'的原因。这将是解决你问题的有用方法

  4. # 4 楼答案

    确保两个java文件位于同一文件夹中

    多功能。爪哇

    import java.util.Scanner;
    
    public class MultiFun {
    
        public static void main(String[] args) {
            Addition obj = new Addition();
    
            Scanner scan = new Scanner(System.in);
            int a, b, c;
    
            System.out.println("Enter 1st number: ");
            a = scan.nextInt();
            System.out.println("Enter 2nd number: ");
            b = scan.nextInt();
    
            c = obj.add(a, b);
            System.out.println("The sum is " + c);
            scan.close();
    
        }
    
    }
    

    加法。爪哇

    class Addition {
        public int add(int a, int b) {
            return (a + b);
        }
    }
    

    运行以下命令

    javac MultiFun.java
    java MultiFun