1,多态的概念
多态是面向对象编程的一大特征。体现了程序的可扩展性,也体现了程序代码的重复使用特性。简单的说就是指一个对象的行为方式可以有很多种操作形态,根据不同对象,会有不同的操作。所以多态寄托于对象。
2,多态的应用
在面向对象编程中,多态主要是通过方法的重载和覆盖体现的。方法是通过给不同对象发送相同的信息,根据不同的对象来完成不同的工作。
3,构造方法和多态
一个类可以有多个构造方法,当使用同一个类的不同构造方法创建多个类对象时,会呈现多种对象,所以这也就体现了多态性。
4,多态应用例题:
设计程序,说明世界上主要几个国家的语言:
package supermarket;
public class TestPeople {
//定义人
public class people{
public void speak(){
System.out.println("人们说话");
}
}
//定义中国人
public class Chinese extends people{
public void speak(){
System.out.println("中国人说中国话");
}
}
//定义美国人
public class American extends people{
public void speak(){
System.out.println("美国人说英语");
}
}
//定义日本人
public class Japanese extends people{
public void speak(){
System.out.println("日本人说日本话");
}
}
public void testman(){
people peoples;
Chinese chinese = new Chinese(); //创建中国人
American american = new American(); //创建美国人
Japanese japanese = new Japanese(); //创建日本人
peoples = chinese;
peoples.speak();
peoples = american;
peoples.speak();
peoples = japanese;
peoples.speak();
}
}
////////////////////////////////main//////////////////////////////
public class Alltest {
public static void main(String[] args) throws FileNotFoundException{
ShuiXianHuaShu t1 = new ShuiXianHuaShu();
// t1.number();
// t1.number2();
// Son a = new Son();
// InputOfOutput b2 = new InputOfOutput();
// b2.testInputOfOutput();
TestPeople ss = new TestPeople();
ss.testman();
}
浙公网安备 33010602011771号