java - 私有(private)构造函数干扰公共(public)方法测试

标签 java constructor private getter-setter

为什么不能正确编译?我添加了 main 方法行试图测试它,但我收到了很多错误,除了说它们不是语句之外,还说私有(private)构造函数是表达式的非法开头,以及公共(public)构造函数。它还要求我在我认为不必要的地方添加分号,因为它们是方法的开头。我不希望有人为我重新输入代码,但有人至少能指出我正确的方向并告诉我哪里出错了吗?

import java.util.Arrays 
public class Book{
    public static void main (String[] args) {



    private String title;           
    private String authors[];       


    public Book() {
        title = "Test";     
        authors = null;             
    }

    public Book(String title, String[] authors) {   
        this.title = title;
        this.authors = authors;     
    }
    public String getterTitle() {       
        return title;
    }
    public void setterTitle(String title) { 
        this.title = title;
    }
    public String[] getterAuthors() {       
        return authors; 
    }
    public void setterAuthors(String[] authors) {       
        this.authors = authors;
    }
    public String bookToString() {
        return "" + getterTitle() + " by " + getterAuthors() + "";
    }
}

最佳答案

您在 java.util.Arrays 之后缺少分号,并且您的 main 没有结束 } 大括号:

import java.util.Arrays;

public class Book {
    private String title;           
    private String authors[];

    public Book(String title, String[] authors) {   
        this.title = title;
        this.authors = authors;     
    }

    public String getterTitle() {       
        return title;
    }

    public void setterTitle(String title) { 
        this.title = title;
    }

    public String[] getterAuthors() {       
        return authors; 
    }

    public void setterAuthors(String[] authors) {       
        this.authors = authors;
    }

    public String bookToString() {
        return "" + getterTitle() + " by " + getterAuthors() + "";
    }

    public static void main (String[] args) {
         // Do something here
    }
}

关于java - 私有(private)构造函数干扰公共(public)方法测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51074073/

相关文章:

c++ - 对内存分配和构造函数的调用是否可以与执行 "new"表达式所需的其他操作交错?

java - Java 中的继承和私有(private)变量

java - 是否强制实用程序类应该是最终的和私有(private)的构造函数?

java - 图像作为组件问题

Java如何使用父类(super class)构造函数设置子类实例变量

java - 这些通知如何称呼?

java - java中构造函数中类变量的初始化

c++ - 为什么派生*到基*之间的转换会因私有(private)继承而失败?

java - 验证 spring 上下文而不刷新它

java - oracle XMLType 在数据库中不起作用