首页 > 解决方案 > 为什么当我编写这个简单的代码时它显示“方法 max1(int, int) 未定义类型重载”

问题描述

我正在尝试编写这个简单的代码,但它不起作用,它System.out.println(max1(1 , 2));在行附近出现错误,它说:

对于类型重载,方法 max1(int, int) 未定义

感谢您的帮助

public class overloading {


public class max {


    public int max1(int a , int b) {

        if(a > b) {

            return a;

        }
        else {

            return b;

        }

    }//max - method


}//max - class


public static void main(String[] args) {


    System.out.println(max1(1 , 2));



}//main



}//main class

标签: javamethods

解决方案


maxclass 是 的内部类overloading,所以要访问 的方法max1max首先需要创建 的实例,overloading然后使用 的实例overloading,需要创建 的实例max

下面的代码可以工作:

public class overloading {

    public class max {

        public int max1(int a, int b) {

            if (a > b) {

                return a;

            } else {

                return b;

            }

        }// max - method

    }// max - class

    public static void main(String[] args) {

        overloading overloading = new overloading();
        max maxObj = overloading.new max();
        System.out.println(maxObj.max1(1, 2));

    }// main
}

推荐阅读