第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java 子類的構造器提示報錯

java 子類的構造器提示報錯

胡子哥哥 2019-03-22 19:15:27
package test;class Person {    public String name;    public int age;    public Person(String name) {        this.name = name;        // this.age = age;        System.out.println("Person constructor is called");    }}public class Student extends Person {    public int grade;    public Student(String name,int age,int grade) {        super(name);    }    public Student(String name,int age) {    }    public static void main(String[] args) {        Student studnet = new Student("jiajiama",20,3);    }}會提示如下的報錯:Student.java:18: 錯誤: 無法將類 Person中的構造器 Person應用到給定類型;public Student(String name,int age) {                                    ^需要: String找到: 沒有參數(shù)原因: 實際參數(shù)列表和形式參數(shù)列表長度不同1 個錯誤我的理解是:應該調用student 的三個參數(shù)的構造函數(shù),然后調用super調用父類中只有1個參數(shù)的構造函數(shù),但是現(xiàn)在為什么會報錯呢
查看完整描述

2 回答

?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

所有的構造方法都需要調用父類的構造方法,你可以通過 this 銜接到類本身的其他構造方法,但是最終必須得存在父類的構造方法(如果父類構造方法無參數(shù),可以省略)。你這個 Student(String name,int age) 構造方法既沒有調用父類的構造方法,也沒有銜接到其他的構造方法里,當然有錯拉。

查看完整回答
反對 回復 2019-04-16
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

  • 某個類如果沒有構造函數(shù),編譯器會自動給添加一個無參構造函數(shù);如果已經有了構造函數(shù),就不會自動添加。

  • 子類的構造函數(shù)必須調用父類的構造函數(shù)。如果沒有顯式地調用父類的構造函數(shù),虛擬機就會自動地去調父類的無參構造函數(shù)。這種情況下,如果父類沒有無參構造函數(shù),編譯器就會報錯。

你的Student第二個構造函數(shù)會去調父類Person的無參構造函數(shù),然而父類只有一個帶參數(shù)的構造 ,所以報錯了。


查看完整回答
反對 回復 2019-04-16
  • 2 回答
  • 0 關注
  • 751 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號