java实验:定义一个People类,定义一个People类的子类Student

/*定义一个People类,它包含属性有姓名name和性别sex和年龄age,一个构造方法,用来初始化这三个属性;
定义一个People类的子类Student,添加一个属性学好number,添加两个构造方法,一个有参构造方法,一个无参构造方法,
他们都要调用父类的构造方法或本类的构造方法来完成对象的初始化,
添加两个成员方法,一个事选课choose(),用来输出“我没有选课”,另一个是选课choose(String),用来选择由参数指定的课程。*/
public class Csj13 {
	String name;
	String sex;
	int age;
	
	//对于年龄的设置的要求
	public void setAge(int age) {
		if (age>0 && age<100)
            this.age = age;
        else
            this.age = 0;
	}

	public Csj13() {
	}

	public Csj13(String name, String sex, int age) {
		super();
		this.name = name;
		this.sex = sex;
		this.setAge(age);//注意在这里用的是setAge()来赋符合条件的年龄值
	}

	@Override
	public String toString() {
		return "姓名:" + name + ", 性别:" + sex + ", 年龄:" + age;
	}

}

/*定义一个People类的子类Student,添加一个属性学好number,添加两个构造方法,一个有参构造方法,一个无参构造方法,
他们都要调用父类的构造方法或本类的构造方法来完成对象的初始化,
添加两个成员方法,一个事选课choose(),用来输出“我没有选课”,另一个是选课choose(String),用来选择由参数指定的课程。*/
public class Student extends Csj13 {
	String number;

	public Student() {
       super();
	}

	public Student(String name, String sex, int age, String number) {
		super(name, sex, age);
		this.number = number;
	}

	public void choose() {
		System.out.println("我没有选课");
	}

	public void choose(String course) {
		System.out.println("选课为:" + course);
	}

	@Override
	public String toString() {
		return super.toString() + " 学号:" + number;
	}

	public void print() {
		System.out.println(this.toString());// 执行子类的tostring()
	}

}
class Student_test {
	public static void main(String[] args) {
		Student s1 = new Student();
		s1.print();
		s1.choose();
		Student s2 = new Student("张三", "女", 66, "12345678");
		s2.print();
		s2.choose("java");
		Student s3 = new Student("陈陈陈", "女", 180, "12345678");
		s3.print();
		s2.choose("java");
	}
}

  • 2
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

耳东哇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值