黑马程序员技术交流社区
标题:
多态在以后开发中很重要吗?
[打印本页]
作者:
陈春
时间:
2013-7-29 21:21
标题:
多态在以后开发中很重要吗?
多态在以后开发中很重要吗
作者:
神之梦
时间:
2013-7-30 20:55
重要
作者:
小时晚er
时间:
2013-7-30 21:05
我们同为新手。。。。我只能告诉你。老师说:多态在以后的开发应用中,用处很多。必须要学会
作者:
小时晚er
时间:
2013-7-30 21:05
我们同为新手。。。。我只能告诉你。老师说:多态在以后的开发应用中,用处很多。必须要学会
作者:
penpen
时间:
2013-7-31 00:28
面向对象的三大特性之一,你觉得重要吗{:soso_e100:}
作者:
狼牙
时间:
2013-7-31 07:34
没有什么是不重要的,最好还是学好!学到用时方恨少啊!我是深有体会啊!好好学习,天天向上!
作者:
Dej@vu
时间:
2013-8-1 20:00
多态是面向对象的三大特性。多态的出现曾强了软件的扩展性
作者:
xuaner0719
时间:
2013-8-1 20:57
|-- 父类或者接口的引用指向自己的子类对象
|-- 就会把子类提升为父类类型,只能调用子类父类共有的方法 向上转型
|-- 调用子类特有的方法,必须进行多态的类型转换,向下转型
|-- 使用instanceof关键字,进行判断,在进行类型转换,再调用子类特有方法
|-- 指挥的是具有共性的对象做使用,不在指挥每一个独立对象了
多态各种好处多多,做为程序员来说,最起码可以减少代码,提高程序的复用性。同时程序的健壮性也提高。
作者:
肥猫
时间:
2013-8-1 22:57
同为菜鸟的我们今后共同为成为大牛奋斗~~.{:soso_e141:}
作者:
lijia113
时间:
2013-8-6 21:21
很重要的,多态能够大大的提高程序的扩展性
在以后的商业编程中,能使后期的维护什么的想对工作量减少
作者:
夜写意
时间:
2013-8-6 21:26
你建一个类,就是相当于Object的子类,里面都继承了Object里的所有方法,其实就涉及到多态了,你说重不重要?多态等都是java的基础,基础打好了才能更好的运用更深的技术。
作者:
天地有我
时间:
2013-8-7 14:57
本帖最后由 天地有我 于 2013-8-7 15:02 编辑
希望对你有帮助,我现在懂的也很少。
能力就这么点。
public class CarDemo
{
public static void print(BMW bmw)
{
bmw.printCar();
}
public static void print(SmallCar smallcar)
{
smallcar.printCar();
}
public static void print(Bus bus)
{
bus.printCar();
}
//提供一个方法,传入的类型为父类型(多态)
public static void print(Car car)
{
car.printCar();
}
public static void main(String[] args)
{
//不使用多态,希望通过 自己封装的方法来调用类中的打印方法。
//打印宝马
print(new BMW());
//打印小车
print(new SmallCar());
//打印汽车
print(new Bus());
System.out.println("-------------------------------------------");
//你会发现,如果用提供的方法去调用的话,每调用一种车就必须为其提供一个方法
//如果有一百种车就必须为其提供一百个方法。
//如果我们使用多态,并且要求使用提供的方法去调用的话,多态的优越性就体现出来了。
//只需要增加一个方法,使用传入的类型为父类型。
//(多态就是子类型的引用指向一个父类型的变量)
print(new BMW());
print(new SmallCar());
print(new Bus());
//这就是多态的好处。不用为每一种车独立定义一个方法了。只需要一个方法,
//根据多态就能调用到传入引用类型的方法
}
}
class Car
{
public void printCar()
{
System.out.println("car");
}
}
class BMW extends Car
{
public void printCar()
{
System.out.println("BMW");
}
}
class SmallCar extends Car
{
public void printCar()
{
System.out.println("smallcar");
}
}
class Bus extends Car
{
public void printCar()
{
System.out.println("bus");
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2