主程序无法识别我的类方法java

主程序无法识别我的类方法java,java,arrays,class,object,Java,Arrays,Class,Object,我之前问过一个问题,但我没能解决。我试图创建一个补遗(类)数组,并将其存储在杂志(类)的单个对象中。尝试调用我的fillArray方法时,出现错误: cannot find symbol: symbol: method fillArray(Supplement[]) location: javaapplication1 这有什么问题吗 Supplement.java: // // // Generated by StarUML(tm) Java Add-In //

我之前问过一个问题,但我没能解决。我试图创建一个
补遗
(类)数组,并将其存储在
杂志
(类)的单个对象中。尝试调用我的
fillArray
方法时,出现错误:

cannot find symbol: 
symbol: method fillArray(Supplement[])
location: javaapplication1
这有什么问题吗

Supplement.java

//
    //
    //  Generated by StarUML(tm) Java Add-In
    //
    //  @ Project : Untitled
    //  @ File Name : Supplement.java
    //  @ Date : 21/04/2020
    //  @ Author : 
    //
    //

    package javaapplication1;


    public class Supplement {
        private String supplementname;
        private int WeeklySupCost;

            public void fillArray(Supplement[] supplements2){


                supplements2[0] = new Supplement("Sports Illustrated Special", 4);
                supplements2[1] = new Supplement("Health and Nutrition", 2);
                supplements2[2] = new Supplement("Lifestyled", 5);
                supplements2[3] = new Supplement("Gamer's Update", 3);


             };

            public void SetSupplementName(String supplementname1){

                supplementname = supplementname1;

            };
        public void WeeklySupCost(int WeeklySupCost1){

                WeeklySupCost = WeeklySupCost1;

            };
        public String GetSupplementName(){

                return supplementname;

            };
        public int GetWeeklyCost(){

                return WeeklySupCost;

            };
        public void SetSupplement(String supplementname1, int WeeklySupCost1){

                supplementname = supplementname1;

            };
        public Supplement(String supplementname1, int WeeklySupCost1){

                SetSupplement(supplementname1, WeeklySupCost1);

            };

            public Supplement(){};
    }
    //
    //
    //  Generated by StarUML(tm) Java Add-In
    //
    //  @ Project : Untitled
    //  @ File Name : Magazine.java
    //  @ Date : 21/04/2020
    //  @ Author : 
    //
    //
    package javaapplication1;

    public class Magazine {
        private String magazinename;
        private int WeeklyCost;
        private Magazine magazineobj;
        private Supplement[] supplements;

        public void SetMagazineName(String magazinename1){

            magazinename = magazinename1;

        };
        public void SetWeeklyCost(int WeeklyCost1){

            WeeklyCost = WeeklyCost1;

        };
        public String GetMagazineName(){

            return magazinename;

        };
        public int GetWeeklyCost(){

            return WeeklyCost;

        };
        public void SetMagazine(String magazinename1, int WeeklyCost1, Supplement[] supplements1){

            magazinename = magazinename1;
            WeeklyCost = WeeklyCost1;
            supplements = supplements1;

        };
        public Magazine(String magazinename1, int WeeklyCost1, Supplement[] supplements1){

            SetMagazine(magazinename1,WeeklyCost1,supplements1);

        };

        public Magazine(){};
        public void printMagazine(){

            System.out.println(magazineobj);

        }
    }
Magazine.java

//
    //
    //  Generated by StarUML(tm) Java Add-In
    //
    //  @ Project : Untitled
    //  @ File Name : Supplement.java
    //  @ Date : 21/04/2020
    //  @ Author : 
    //
    //

    package javaapplication1;


    public class Supplement {
        private String supplementname;
        private int WeeklySupCost;

            public void fillArray(Supplement[] supplements2){


                supplements2[0] = new Supplement("Sports Illustrated Special", 4);
                supplements2[1] = new Supplement("Health and Nutrition", 2);
                supplements2[2] = new Supplement("Lifestyled", 5);
                supplements2[3] = new Supplement("Gamer's Update", 3);


             };

            public void SetSupplementName(String supplementname1){

                supplementname = supplementname1;

            };
        public void WeeklySupCost(int WeeklySupCost1){

                WeeklySupCost = WeeklySupCost1;

            };
        public String GetSupplementName(){

                return supplementname;

            };
        public int GetWeeklyCost(){

                return WeeklySupCost;

            };
        public void SetSupplement(String supplementname1, int WeeklySupCost1){

                supplementname = supplementname1;

            };
        public Supplement(String supplementname1, int WeeklySupCost1){

                SetSupplement(supplementname1, WeeklySupCost1);

            };

            public Supplement(){};
    }
    //
    //
    //  Generated by StarUML(tm) Java Add-In
    //
    //  @ Project : Untitled
    //  @ File Name : Magazine.java
    //  @ Date : 21/04/2020
    //  @ Author : 
    //
    //
    package javaapplication1;

    public class Magazine {
        private String magazinename;
        private int WeeklyCost;
        private Magazine magazineobj;
        private Supplement[] supplements;

        public void SetMagazineName(String magazinename1){

            magazinename = magazinename1;

        };
        public void SetWeeklyCost(int WeeklyCost1){

            WeeklyCost = WeeklyCost1;

        };
        public String GetMagazineName(){

            return magazinename;

        };
        public int GetWeeklyCost(){

            return WeeklyCost;

        };
        public void SetMagazine(String magazinename1, int WeeklyCost1, Supplement[] supplements1){

            magazinename = magazinename1;
            WeeklyCost = WeeklyCost1;
            supplements = supplements1;

        };
        public Magazine(String magazinename1, int WeeklyCost1, Supplement[] supplements1){

            SetMagazine(magazinename1,WeeklyCost1,supplements1);

        };

        public Magazine(){};
        public void printMagazine(){

            System.out.println(magazineobj);

        }
    }
主程序:

package javaapplication1;

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


        Supplement[] supplements = new Supplement[4];

        fillArray(supplements);

        Magazine magazineobj = new Magazine("The Wheels Special", 35, supplements);
        magazineobj.printMagazine();

    }

}

您需要使方法
fillArray
static
在没有
Supplement
实例的情况下访问它,因为在
JavaApplication1
类中没有名为
fillArray
的方法是
static
或者可以通过静态上下文访问

使用:

publicstaticvoidfillarray(增补[]增补){…}
电话:

Supplement.fillArray(supplements);

您想做什么?在这里,您可以从静态上下文调用实例方法。。。它不能工作你应该使这个方法
静态
并这样调用它:
Supplement.fillArray(supplements)这似乎让我现在可以编译了。但是,没有打印出来。我在杂志上的印刷方法有什么问题吗?这似乎让我现在可以编译了。但是,没有打印出来。我在杂志中的打印方法是否有问题?这是因为
magazineobj
实例中的
magazineobj
字段为空。此外,您不会覆盖
toString
方法。您可以在
main
-方法中尝试
System.out.println(magazineobj)
,但如果不覆盖
toString()
,则只会打印对象的名称和内存地址。