JAVA多态示例

public class DuoTaiDemo {


	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		StudentDo studentDo = new StudentDo();
		studentDo.doSomething(new BaseStudent());
		studentDo.doSomething(new AdvStudent());
	}
}


abstract class Student{
	public abstract void study() ;
	public void sleep() {
		System.out.println("躺着睡");
	}
}
class BaseStudent extends Student{
	public void study() {
		System.out.println("base study");
	}
	public void sleep() {
		System.out.println("坐着睡");
	}
}
class AdvStudent extends Student{
	public void study() {
		System.out.println("Adv study");
	}
	public void sleep() {
		System.out.println("站着睡");
	}
}


class StudentDo {
	public void doSomething(Student s){
		s.study();
		s.sleep();
	}
}


你可能感兴趣的:(JAVA多态示例)