public static void main(String[] args) {
Bird b = new Bird("红色", 4)
Fish f = new Fish("5", 2)
b.printInfo()
f.printInfo()
}
}
public abstract class Animal {
String color
String weight
int age
public abstract void printInfo()
}
public class Bird extends Animal {
Bird(String color, int age) {
super.color = color
super.age = age
}
@Override
public void printInfo() {
System.out.println("我是一只" + color + "的返皮鸟!")
System.out.println("今年" + age + "旦斗岁了!")
}
}
public class Fish extends Animal {
Fish(String weight, int age) {
super.weight = weight
super.age = age
}
@Override
public void printInfo() {
System.out.println("模世磨我是一条" + weight + "斤重的鱼!")
System.out.println("今年" + age + "岁了!")
}
}
抽象的Animal 类public abstract class Animal {
public abstract void sound()
}
CanFly接口
public interface CanFly {
public void fly()
}
Bird类继承自Animal类,并有属性表示鸟类年龄。并实现父类中的sound方法
使鸟类实现接口Canfly,并实现其中的fly方法,在方法中向控制台打印输出:鸟在飞。。。
public class Bird extends Animal implements CanFly {
private int age
@Override
public void sound() {
// TODO Auto-generated method stub
System.out.println("bird sound")
}
public void fly() {
// TODO Auto-generated method stub
System.out.println("鸟在飞。。。 ")
}
}
编写飞机类Plane,使世衫飞机类实现接口Canfly,并实现其中的fly方法,在方法中向控制台打印输出:飞机在飞。咐岩。。
public class Plane implements CanFly {
public void fly() {
// TODO Auto-generated method stub
System.out.println("飞机在飞。。。 ")
}
}
编写测试类,测试类中有main方法,还有letFly方法,打印输出什么事物在飞方法头部为:public static void letFly(Canfly c)
还有letSound方法,打印输出什么动物在叫,在方法中要判断,这个对象是否是动物,如果是动物才让叫。方法头部为:public static void letSound(Animal a)
在main方法中创建鸟对象和飞机对象,在分别调用letFly和letSound方
public class Test {
public static void letFly(CanFly c)
{
c.fly()
}
public static void letSound(Animal a)
{
a.sound()
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Bird b=new Bird()
Test.letFly(b)
Test.letSound(b)
Plane p=new Plane()
Test.letFly(p)
// Test.letSound(p)//飞机没有继承自Animal类所以搜简腔不能调用该方法
}
}
以上全部按照你要求写的
package TestPerson/**
* (1) 编写程序实现如下功能:已知Person类包含三个公共成员变量(姓名、性别、年龄)和一个构造方法,
* Student类是Person类的派生类,包含两个新的公共成员变量(学号、班号)、两个公共方法(修改年龄、显示基本信息)及一个构造方法。
* 在测试类Test1中,定义一组学生对象,并初始化他们的基本信息,然后依次输出。
*/
public class Test1 {
public static void main(String[] args) {
Student[] student = new Student[3]
student[0] = new Student("小李", "男", 12, 20181101, 01)
student[1] = new Student("小南", "女", 13, 20001102, 01)
student[2] = new Student("小李", "男", 12, 20181103, 01)
for(Student stu : student) {
stu.showInformation()
}
}
}
class Person {
public String name
public String sex
public int age
public Person(String name, String sex, int age) {
super()
this.name = name
this.sex = sex
this.age = age
}
}
class Student extends Person {
public long studentId
public long classId
public void setAge(int age) {
age = this.age
}
public void 态耐showInformation() {
System.out.println("我的姓名是" + name + "," + "我的性别是" + sex + "," + "我的年龄是" + age
+ "岁," + "我的学号是" + studentId + "," + "我的班号是" + classId + "班")
}
public Student(String name, String sex, int age, long studentId,
long classId) {
super(name, sex, age)
this.studentId = studentId
this.classId = classId
}
}
不可否认,我现在是有点闲,所以我就帮你写第一个吧镇闭族,至于后面两个,我就不写了,看看还有没有其他人有点闲时间,看缘分吧
运行结果:
我的姓名是小李,我的性别是男,我的年龄是12岁,我的学号是20181101,我的班号是1班
我的姓名是小南,我的性别是女,我的年龄是13岁,我的学号是20001102,我的班号是1班
我的姓名是小李,我的性别是男,我的年龄是12岁御弊,我的学号是20181103,我的班号是1班
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)