1 問題
子類中如何繼承父類的方法,或者如何重寫方法。
2 方法

首先得在父類中創(chuàng)建一個(gè)方法,利用創(chuàng)建的方法的格式void+方法名(){},然后在子類中調(diào)用這個(gè)方法:直接輸入方法名,再按enter,便會(huì)出現(xiàn)super.方法名(),表示調(diào)用該方法。當(dāng)不想調(diào)用父類的方法時(shí)可直接刪除super的調(diào)用,然后在方法中重新寫。
例題:4、 請(qǐng)?jiān)O(shè)計(jì)2個(gè)類,分別是學(xué)生類Student,本科生類Undergraduate,,其中Student類是一個(gè)抽象類,它包含一些基本的學(xué)生信息,如姓名、類別(本科生還是研究生)、所學(xué)課程(這里假定為3門課,用一維數(shù)組表示)成績(jī)和成績(jī)等級(jí)等,而Undergraduate類是Student類的子類.
package lab02; public class Student { //屬性 String name; String type;//類別 int[] courseScores;//三門課的成績(jī)數(shù)組 String grade;//平均成績(jī)等級(jí) Student(){} Student(String name,String type,int[] courseScores){ this.name=name; this.type=type; this.courseScores=courseScores; } void computeGrade(){ System.out.println("Student:compute"); } package lab02; public class Undergraduate extends Student{ Undergraduate(){} Undergraduate(String name,String type,int[] courseScores){ super(name,type,courseScores); } @Override//該方法來自于父類,然后不適合子類(是直接寫函數(shù)名再enter回車直接得來的) void computeGrade() { // super.computeGrade();//super表示執(zhí)行父類方法 System.out.println("Undergraduate:compute"); Int avg=(this.courseScores[0]+this.courseScores[1]+this.courseScores[2])/3; if(avg>80){ this.grade="優(yōu)秀"; }else if(avg>60){ this.grade="良好"; }else if(avg<60){ this.grade="差"; } } } package lab02; public class Test04 { public static void main(String[] args) { Undergraduate zhang=new Undergraduate("張三","本科生",new int[]{90,95,100}); zhang.computeGrade(); System.out.println("等級(jí):"+zhang.grade); |
3 結(jié)語
針對(duì)繼承父類的方法和重寫方法的問題,我們的重點(diǎn)是理解如何調(diào)用函數(shù)的,如何在子類中使用該方法,要使用的父類的方法名加enter即可,當(dāng)不想執(zhí)行父類方法去掉super,自己重寫方法即可。
-
編程語言
+關(guān)注
關(guān)注
10文章
1955瀏覽量
36318 -
Super
+關(guān)注
關(guān)注
0文章
14瀏覽量
8515 -
void
+關(guān)注
關(guān)注
0文章
23瀏覽量
10058
發(fā)布評(píng)論請(qǐng)先 登錄
關(guān)于Java繼承的問題
建立父類即其子類的同名方法——關(guān)于重寫VI的問題
Python多重繼承使用方法
探討一下JAVA子類調(diào)用父類構(gòu)造器函數(shù)
Java繼承怎么寫

C++中類的繼承訪問級(jí)別學(xué)習(xí)總結(jié)(二)
C語言如何實(shí)現(xiàn)繼承及容器

評(píng)論