首页编程java编程java为什么使用多态性(在java中为什么要多态)

java为什么使用多态性(在java中为什么要多态)

编程之家2023-10-1278次浏览

其实java为什么使用多态性的问题并不复杂,但是又很多的朋友都不太了解在java中为什么要多态,因此呢,今天小编就来为大家分享java为什么使用多态性的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

java为什么使用多态性(在java中为什么要多态)

在java中为什么要多态

简单的说多态就是实现使用同样的方法做不同的事情,这个情况在现实广泛存在,比如使用彩色打印机可以打印出彩色图像,使用单色打印机只能打印出单色的东西。

而计算机程序就是为了解决现实的问题而存在的,它要能将现实中出现的问题还原到计算机中并加工处理。

多态是继承/方法覆盖/方法重载的结合

java为什么使用多态性(在java中为什么要多态)

有了多态,程序可以实现动态绑定。

其它的理论知识就不多说了,随变“狗”一下就出来一大片,希望对你有用。

java的多态怎么理解啊,多态有什么用途。

多态有编译时多态和运行时多态。

java为什么使用多态性(在java中为什么要多态)

第一个是通过方法重载实现;第二个是通过方法覆盖实现(子类覆盖父类方法)。

第一种就是我们调用方法是不用区分参数类型,程序会自动执行相应方法,如:加法运算,可以使int相加,可以是double相加,都是同一个方法名。

第二种就是动态绑定,使用父类引用指向子类对象,再调用某一父类中的方法时,不同子类会表现出不同结果。这样的作用就是扩展性极好,玩过网游的话应该知道游戏中有不同的角色,它们都有一个父类,它们做相同动作时表现出来的效果就会不一样,比如跑,魔法师的跑跟战士的跑就不会一样,这就是俩者都覆盖了父类中的跑方法,各自有自己的现实,表现出来多态。如果有一天你想再加个角色,只用再写一个类继承该父类,覆盖其中的跑方法就行了,其他代码不用怎么改,所以可维护性也很好。

这一个小的程序或许你体会不到多态的强度作用。其实说到多态就是面向接口编程,它不和具体类尽心挂钩了

比如你没用多态的话,

你没实例化一个对象就要new一下,那假如你那天改变了需求了呢?那是不是又要改里面的?这样不好,所以你可以通过多态,把需要相似的给提出来,然后继承它这样以后需要扩展你仅仅只是继承而已。这样就很简单。

这个需要多看代码才可以更深刻理解。

有问题在讨论。

java中什么是多态性它具有什么优点

Java是面向对象的语言,多态性是面向对象程序设计代码重用的一个最强大机制,动态性的概念也可以被说成“一个接口,多个方法”。Java实现运行时多态性的基础是动态方法调度,它是一种在运行时而不是在编译期调用重载方法的机制,主要体现在继承和接口实现两方面,详见例子:

继承实现多态例如:

class A{

method(){

System.out.println("a");}

}

class B extends A{

method(){

System.out.println("b");}}

class test{

main(){

A test= new B();

test.method();//执行以后输出的是:b。解释就是:父类引用(A)指向子类对象(B),这个引用调用的是子类的方法,而不是父类A的方法;

}}

继承实现多态其实原理类似:

interface A{

method();}

class B implements A{

method(){

System.out.println();}}

class test{

main(){

A test= new B();

test.method();//此处便会使用java的多态,B实现了A,虽然=前面是A test,但实际上生成的确是B的对象,所以调用它的方法,同继承中的父类对象指向子类对象原理相同,只是此处为继承;

}}

多态的好处非常明显啊,有人总结:

1.可替换性。多态对已存在的代码具有可替换性。

2.可扩充性。多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际上新加子类更容易获得多态功能。

3.接口性。多态是超类通过方法签名,向子类提供了一个共同接口,由子类来完善或者覆盖它而实现的。

4.灵活性。它在应用中体现了灵活多样的操作,提高了使用效率。

5.简化性。多态简化了对应用软件的代码编写和修改过程,尤其在处理大量对象的运算和操作时,这个特点尤为突出和重要。值得注意的是,多态并不能够解决提高执行速度的问题,因为它基于动态装载和地址引用,或称动态绑定。

在Java程序中,多态性带给我们的好处是什么

1.可替换性。多态对已存在的代码具有可替换性。(不用修改当前代码,只要提供新的方法就可以直接调用)

2.可扩充性。多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际上新加子类更容易获得多态功能。

3.接口性。多态是超类通过方法签名,向子类提供了一个共同接口,由子类来完善或者覆盖它而实现的。

4.灵活性。它在应用中体现了灵活多样的操作,提高了使用效率。

5.简化性。多态简化了对应用软件的代码编写和修改过程,尤其在处理大量对象的运算和操作时,这个特点尤为突出和重要。值得注意的是,多态并不能够解决提高执行速度的问题,因为它基于动态装载和地址引用,或称动态绑定。

关于java为什么使用多态性的内容到此结束,希望对大家有所帮助。

java jdk是什么意思 jdk是什么java集合框架是什么?求大神,java的集合框架是什么意思