/*接口与继承二者结合的练习*/
abstract class Student
{
void study()
{
System.out.println("好好学习,天天向上");
}
abstract void sleep();
}
interface Smoking
{
abstract void smoke();
}
class BaseStudent extends Student implements Smoking//基础班学生继承了student,实现了Smoking的方法
{
public void study()
{
System.out.println("我就不好好学习,我要覆盖你的方法"); //覆盖了父类的方法
}
public void sleep()
{
System.out.println("我就是喜欢睡觉");//具体了父类的抽象方法
}
public void smoke()
{
System.out.println("抽烟是学生对象的扩展,不是所有学生都要抽烟的"); //具体了接口的抽象方法
}
}
class InterfaceDemo
{
public static void main(String[] args)
{
BaseStudent bs = new BaseStudent();//实例化基础班学生对象
bs.study();
bs.sleep();
bs.smoke();
}
}
/*
G:\代码>javac InterfaceDemo.java
G:\代码>java InterfaceDemo
我就不好好学习,我要覆盖你的方法
我就是喜欢睡觉
抽烟是学生对象的扩展,不是所有学生都要抽烟的
G:\代码>
*/ |
|