題目顯示不全,完整題目描述:
(1)定義一個Person類,其中包括:1.定義屬性:姓名;年齡;民族作為成員變量。定義靜態成員變量:人數2.定義構造方法:對成員變量進行初始化。3.定義多個方法:分別顯示相應的屬性值,例如getName(){System.out.print("名稱="+name+";"); }4.定義一個方法“成長”:實現年齡的增加,每執行一次年齡增加1。5.定義一個靜態方法“顯示人數”:顯示當前的人數。 (2)定義一個民族接口其中包括抽象方法:1.“習俗”:顯示民族習俗。2.“政策”:民族優待政策。3.編譯生成.class文件。 (3)定義一個“學生”類繼承Person類,實現(2)中定義的民族接口。1.增加屬性:“學歷”,定義為字符串類型,表示本科生還是研究生。2.定義兩個構造方法:構造方法重載;3.覆蓋父類中的方法“成長”:實現根據年齡顯示是研究生還是本科生,年齡小於23是本科生,否則是研究生。其中還要調用父類的“成長”方法,實現年齡的增加。4.實現接口中的兩個抽象方法“習俗”和“政策”。“習俗”實現功能為:顯示“春節,端午,中秋”等。 “政策”實現功能為:根據“民族”的值如果是漢族,顯示“無”,否則顯示“有優惠政策”。5.定義一個main方法。實例化一個父類對象,調用各種方法顯示相關信息,然后,實例化一個學生類對象,分別調用相關方法,包括繼承來的各種方法,進行覆蓋后的方法等,實現多態效果,顯示各種信息。
完整代碼如下:
package naizi;
class Person {
protected String Name;
protected int Age;
protected String Nationality;
public static int count=0;
Person(String Name,int Age,String Nationality){
this.Name = Name;
this.Age = Age;
this.Nationality = Nationality;
count++;
}
//顯示屬性值
public void getName() {
System.out.println("Name="+Name+";");
}
public void getAge() {
System.out.println("Age="+Age+";");
}
public void getNationality() {
System.out.println("Nationality="+Nationality+";");
}
//成長方法
public void growUp(){
Age++;
}
//顯示人數方法
public void show(){
System.out.println("Person count:"+count+";");
}
}
//定義Nationality接口
interface Nationality{
public void custom();
public void policy();
}
//定義一個Student類繼承Person類,實現Nationality接口
public class Student extends Person implements Nationality{
//子類的新成員變量
protected String Education;
//子類的構造方法調用父類的構造方法
Student(String Name,int Age,String Nationality,String Education){
super(Name, Age, Nationality);
this.Name = Name;
this.Age = Age;
this.Nationality = Nationality;
this.Education = Education;
}
//構造方法的重載,並且默認如果一個學生沒有傳入民族,默認為漢族
Student(String Name,String Education){
this(Name, 0, "han", Education);
this.Name = Name;
this.Education = Education;
}
//覆蓋父類的成長方法
public void growUp(){
if("Undergraduate".equals(Education)){
System.out.println("Undergraduate;");
}else {
System.out.println("Postgraduate;");
}
Age++;
super.growUp();
}
public void custom(){
System.out.println("Spring Festival, Dragon Boat Festival, Mid-Autumn Festival");
}
public void policy(){
if("han".equals(Nationality)){
System.out.println("No preferential policies;");
}else {
System.out.println("Have preferential policies;");
}
}
//請參考main函數的內容編寫以上內容
public static void main(String args[]){
Person a=new Person("zhangsan",19,"han");
a.getName();
a.getAge();
a.getNationality();
a.growUp();
a.getAge();
a.show();
Person b=new Person("lisi",39,"man");
b.getName();
b.getAge();
b.getNationality();
b.growUp();
b.getAge();
b.show();
Student c=new Student("wanger",33,"man","Postgraduate");
c.growUp();
c.custom();
c.policy();
c.show();
Student d=new Student("wanger","Undergraduate");
d.growUp();
d.custom();
d.policy();
d.show();
}
}
測試如圖:

