mysql 定义年龄属性_定义一个Person类,其中包括:1.定义属性:姓名、年龄、民族作为成员变量。定义静态成员变量:人数2.定义构造方法:对成员变量进行初始化。3.定义多个方法:分别显示相应的属...

题目显示不全,完整题目描述:

(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();

}

}

测试如图:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值