多态的概念:1.子类重写父类的方法;2.编写方法时使用的是父类的方法;3.运行时,根据实际创建的对象类型动态决定使用哪个方法。
package cn.enn;
public class Teacher {
public void giveLession() {
System.out.println("自我介绍");
System.out.println("知识点讲解");
}
}
===============================================
package cn.enn;
public class TJTeacher extends Teacher {
@Override
public void giveLession() {
System.out.println("天津中心李楠");
System.out.println("dotnet讲解");
super.giveLession();
}
}
===============================================
package cn.enn;
public class BJTeacher extends Teacher{
private String name ="beijing";
public String grade="三级";
@Override
public void giveLession() {
super.giveLession();
System.out.println("北京中心王鹏");
System.out.println("JAVA讲解");
}
}
===============================================
package cn.enn;
public class HQ3 {
public void judge(Teacher t){
t.giveLession();
}
}
===============================================
package cn.enn;
public class Client {
public static void main(String[] args) {
// TODO Auto-generated method stub
HQ3 hq = new HQ3();
hq.judge(new BJTeacher());
}
}
总结:多太中出现的调用方法,调用的是new关键字后面指定的对象,调用的属性是=new 前面定义的指针指向的类的属性,eg:
Teacher t = new BJTeacher();//和上面的文字对应着颜色理解。