3

次のコードに問題があります...

/**
 * This class holds all of the information pertaining to 
 * a person's name.
 */
public class Name {

    private String first, middle, last, maiden, initials, prefix, suffix;
    private char middleInitial, firstInitial, lastInitial;
    private

    /**
     * Constructor for a Name given first, middle, and last names.
    */
    public Name(String first, String middle, String last) {

        this.first = first;
        this.middle = middle;
        this.last = last;
        this.middleInitial = middle.charAt(0);
        this.firstInitial = first.charAt(0);
        this.lastInitial = last.charAt(0);
        this.initials = String.valueOf(firstInitial + middleInitial 
            + lastInitial);
        this.maiden = null;
        this.prefix = null;
        this.suffix = null;

    }

他にもありますが、プライマリコンストラクターでエラーが発生しています。タイトルに入力したエラーが表示されます。ご覧のとおり、私のクラスとコンストラクターはどちらもパブリックです。これにより問題が発生することはありませんが、問題が発生しているようです。

4

3 に答える 3

14

privateコンストラクターのコメントの前に「孤立した」修飾子があります。

private // Here!

/**
 * Constructor for a Name given first, middle, and last names.
 */
public Name(String first, String middle, String last) {

それを取り除くだけで、あなたは大丈夫なはずです。

于 2015-06-19T18:04:54.860 に答える
6

privateクラス内の 3 行目にはぐれがあります。ステートメントは中括弧またはセミコロンに遭遇するまで続くため、コンパイラーはこれがコンストラクター宣言と同じステートメントの一部であると見なしprivate public Name(String first, String middle, String last)ます。

于 2015-06-19T18:03:41.940 に答える