Murmure.607 2023-01-04 20:14 采纳率: 100%
浏览 25
已结题

关于#main#的问题,如何解决?(语言-java)

今天学的方法,做作业的时候遇到了一个问题。
为什么我把数组创建到main函数外面,就会报错呢?

public class TestBooks {


    public static void main(String[] args) {
        Books[] books = new Books[3];
        for (int i = 0; i < books.length; i++) {
            books[i] = new Books();
            books[i].setId(i + 1);
        }
        books[0].setName("java");
        books[0].setPrice(110.5);
        books[0].setNumber(0);
        books[1].setName("abcd");
        books[1].setPrice(10.5);
        books[1].setNumber(0);
        books[2].setName("JDBC");
        books[2].setPrice(12.5);
        books[2].setNumber(0);
        for (int i = 0; i < books.length; i++) {
            System.out.println(books[i].getId() + "\t" + books[i].getName() +
                    "\t" + books[i].getPrice() + "\t" + books[i].getNumber());
        }
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入图书的编号:");
        int choice = sc.nextInt();


    }

public class TestBooks {
    Books[] books = new Books[3];

    public static void main(String[] args) {
        
        for (int i = 0; i < books.length; i++) {
            books[i] = new Books();
            books[i].setId(i + 1);
        }
        books[0].setName("java");
        books[0].setPrice(110.5);
        books[0].setNumber(0);
        books[1].setName("abcd");
        books[1].setPrice(10.5);
        books[1].setNumber(0);
        books[2].setName("JDBC");
        books[2].setPrice(12.5);
        books[2].setNumber(0);
        for (int i = 0; i < books.length; i++) {
            System.out.println(books[i].getId() + "\t" + books[i].getName() +
                    "\t" + books[i].getPrice() + "\t" + books[i].getNumber());
        }
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入图书的编号:");
        int choice = sc.nextInt();


    }

  • 写回答

4条回答 默认 最新

  • Huazie 全栈领域优质创作者 2023-01-04 20:20
    关注
    • main方法是静态方法, 它能引用的外部变量【比如你这个类的成员 】 ,都要是 静态 static 修饰

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 1月13日
  • 已采纳回答 1月5日
  • 创建了问题 1月4日