黑马程序员技术交流社区

标题: 【厦门JavaEE基础5期-每日总结】接口、多态 [打印本页]

作者: 厦门校区    时间: 2018-12-11 19:35
标题: 【厦门JavaEE基础5期-每日总结】接口、多态
今天我们学习了面向对象三大特性的最后一个多态。请按照自己的理解回答下面问题:

1.接口和抽象类的区别?

2.继承和实现的区别?

3.多态有什么好处?

4.什么时候需要用到向上转型?什么时候需要用到向下转型
作者: 陈彬    时间: 2018-12-11 20:01
1.接口和抽象类的区别?
(1)创建时使用的关键字不同,接口使用的interface关键字,而抽象类使用的是abstract关键字
(2)抽象类中可以有成员方法,变量,抽象方法,构造方法,和私有方法,而接口中只能写常量和抽象方法,默认方法,静态方法,和私有方法
(3)抽象类的功能是共性抽取,和对子类的约束,而接口是功能扩展和多个类的公共约束
2.继承和实现的区别?
继承只能单继承,不能多继承,只能有一个直接的父类。而实现可以多实现,可以实现多个接口。
3.多态有什么好处?
减少重复代码的编写
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当有多个对象时,可以使用向上转型,可以减少代码的编写。当子类有自己的方法,但是这时候我们已经进行了向上转型时,这时候是不能访问子类中特有的方法的需要向下转型,才能调用子类自己的方法。


作者: 吴少华    时间: 2018-12-11 20:06
1.接口和抽象类的区别?
接口定义常量,抽象类只能定义变量,接口没有构造方法不用初始化且没有静态代码块,抽象类需要构造方法初始化,可以有静态代码块
2.继承和实现的区别?
抽象类是共性抽取,具有约束作用,不能直接创建对象,只能创建子类对象来间接调用,需要重写覆盖抽象方法,关键字abstract
接口是功能拓展,提供规范的公共标准,不能直接创建对象,只能创建实现类对象来间接调用,需要重写覆盖抽象方法,关键字interface
3.多态有什么好处?
减少代码的重复率
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当实现类(子类的都有共同的行为,但是却有不同的表达形式时,且接口(父类)和实现类(子类)有共同的方法,为了减少代码的重复率,需要向上转型。
需要调用实现类(子类)特有的方法就需要向下转型,需要instance判断是否转型异常。
作者: 周章强    时间: 2018-12-11 20:12
1.接口和抽象类的区别?
区别:
抽象类(关键字abstract)是有抽象方法的类。无法建立对象,是用来被继承的父类。用来进行   共性的抽取  ,减少代码的编写。
接口(关键字interface)是多个类的公共规范,是一种引用类型,是用来进行    功能的拓展。
2.继承和实现的区别?
区别:
继承是一个类与另一个(且只能为一个)类的上下关系,被继承的父类可以有构造方法。
实现是一个类与一个(或多个)接口的上下关系,接口没有构造方法。
3.多态有什么好处?
好处:
向上转型:可以减少代码的编写(共性抽取);向下转型:可以让子(实现)类能够使用特有的内容。(功能拓展)
4.什么时候需要用到向上转型?什么时候需要用到向下转型
向上转型:子类对象条件不确定时,可以转型父类减少代码的编写。
向下转型:需要使用父类没有的,特定子类的内容时。


作者: 杨鑫棋    时间: 2018-12-11 20:15
1.接口和抽象类的区别?

抽象类:
        抽象类用abstract关键字修饰,但抽象类可以有构造方法,用来初始化代码。
抽象方法的字方法通过extends关键字来继承抽象方法。

接口:
        用interface关键字来修饰,接口没有构造方法,也没有static代码块,但是java7后接口可以定义:常量,抽象方法。
java8后接口可以定义:静态方法,默认方法。
java9后接口可以定义:私有方法。
接口的实现类通过implements关键字来继承接口。 、
接口中的常量必须要赋值。

2.继承和实现的区别?

继承:       
        继承只能继承单一父类,但一个父类可以有多个子类。
实现:
        实现类可以有多个接口。

3.多态有什么好处?

减少代码的编写。例如可以用父类类型的变量作为参数来接收子类传递的值。

4.什么时候需要用到向上转型?什么时候需要用到向下转型

向上转型:
        当方法中参数列表使用父类类型作为参数时,可以将子类的值直接传递,这时就需要向上转型。
向下转型:
        当需要使用子类特有的方法的时候,就需要进行向下转型,否则无法使用子类特有的方法。
       

作者: 刘荣城    时间: 2018-12-11 20:20
接口和抽象类的区别?
接口:用interface关键字来修饰,没有构造方法和static代码块。接口有私有方法,静态方法,成员方法,抽象方法。不能有变量。
抽象类:用adstract关键字来修饰,有构造方法和static代码块。抽象类可以实现接口,胆接口不能继承抽象类

2.继承和实现的区别?
继承是,单继承一个父类可以有多个子类,但子类只有一个父类。要继承用,extends关键字。
实现是可以多继承,可以更好扩展,实现用implements关键字。

3.多态有什么好处?
减少代码的编写。
4.什么时候需要用到向上转型?什么时候需要用到向下转型
用父类来创建对象,用子类来实现代码 。
向下转型可以使用子类的使用行为和属性。
作者: 杨鑫棋    时间: 2018-12-11 20:21
1.接口和抽象类的区别?

抽象类:
        抽象类用abstract关键字修饰,但抽象类可以有构造方法,用来初始化代码。
抽象方法的字方法通过extends关键字来继承抽象方法。

接口:
        用interface关键字来修饰,接口没有构造方法,也没有static代码块,但是java7后接口可以定义:常量,抽象方法。
java8后接口可以定义:静态方法,默认方法。
java9后接口可以定义:私有方法。
接口的实现类通过implements关键字来继承接口。 、
接口中的常量必须要赋值。

2.继承和实现的区别?

继承:       
        继承只能继承单一父类,但一个父类可以有多个子类。
实现:
        实现类可以有多个接口。

3.多态有什么好处?

减少代码的编写。例如可以用父类类型的变量作为参数来接收子类传递的值。

4.什么时候需要用到向上转型?什么时候需要用到向下转型

向上转型:
        当方法中参数列表使用父类类型作为参数时,可以将子类的值直接传递,这时就需要向上转型。
向下转型:
        当需要使用子类特有的方法的时候,就需要进行向下转型,否则无法使用子类特有的方法。
       

作者: 黄毅    时间: 2018-12-11 20:43
1.接口和抽象类的区别?
一个类只能继承一个抽象类,但是可以实现多个接口接口中没有静态代码块和构造方法
接口定义常量,抽象类可以定义变量
接口的关键字为implements,抽象类的关键字为abstract
2.继承和实现的区别?
继承是共性抽取,实现是功能拓展
3.多态有什么好处?
减少代码编写
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当父类引用指向一个子类对象时需向上转型
需要输出子类特有的内容时需要向下转型


作者: 陈佳鹏    时间: 2018-12-11 20:52
1.接口只有常量,接口不能有构造方法。接口是公共规范,功能扩展,抽象类为共性抽取,公共约束。
2.单继承多实现。
3.实际开发的过程中,父类类型作为方法形式参数,传递子类对象给方法,进行方法的调用,更能体现出多态的扩展性与便利。可以使程序编写的更简单,并有良好的扩展。
4.需要调用父类的方法时可以向上转型,需要用到子类特有的方法就要向下转型(还原)

作者: 赖熙蒙    时间: 2018-12-11 20:53
1.接口和抽象类的区别?
答:接口类不可以包含静态代码块,不能包含构造方法,只能定义常量,不用初始化;抽象类能够定义变量,且需要构造方法初始化变量,能够包含静态代码块。
2.继承和实现的区别?
答:继承是共性抽取,实现是功能拓展;继承只能单继承,实现可实习多个接口。

3.多态有什么好处?
答:实际开发的过程中,父类类型作为方法形式参数,传递子类对象给方法,进行方法的调用,能够减少代码的编写,体现出多态的扩展性与便利。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
答:当父类引用指向一个子类对象时,就是默认使用了向上转型。当使用多态方式调用方法时,想要调用子类中的特有方法,就需要用到向下转型。




作者: 苏阿合    时间: 2018-12-11 20:55
1.接口和抽象类的区别?
接口用interface关键字修饰;抽象类用abstract修饰。
接口中不能有变量、构造方法、静态代码块;抽象类可以有变量、构造方法、静态代码块。
接口是多个类的公共的规范,进行功能统一规范起到约束作用,可进行功能拓展;抽象类是将多个类进行共性的抽取,要求子类对方法进行细化重写。

2.继承和实现的区别?
继承只能单继承,实现可以多实现。
继承用extends关键字,实现用implements关键字。

3.多态的好处?*
不管右边new的是谁,等号左边的调用方法不变,解决子类方法重复编写的问题,提高代码复用性和方法的可扩展性。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
当子类对象不确定时,可以向上转型,用父类对象调用子类共性方法,增强代码的复用性和可扩展性。
当要用子类的特有功能时,需要进行向下转型。

作者: zhuyiming    时间: 2018-12-11 21:00
1.接口和抽象类的区别?
答:接口是多个类的公共规范      抽象是共性抽取
功能扩展                               父类要求子类必须有的方法
2.继承和实现的区别?
答:继承 是单继承                  实现可以 实现多个类
关键字  abstract                    关键字 implements
3.多态有什么好处?
减少代码量.和 代码的复用性
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当父类引用指向一个子类的时候,用 向上转型
当需要使用子类 的特殊 属性和方法的时候 需要用向下转型
作者: lj478360767    时间: 2018-12-11 21:01
今天我们学习了面向对象三大特性的最后一个多态。请按照自己的理解回答下面问题:

1.接口和抽象类的区别?
a.抽象类能够定义变量,接口只能定义常量;b.抽象类只能单继承,接口可以多实现;
c.抽象类是共性抽取,接口是功能扩展;
d.抽象类可以有构造方法和静态代码块,而接口不行;

2.继承和实现的区别?
a,继承只能单继承,而实现可以多实现;
b.继承有extends关键字,实现用implement关键字;

3.多态有什么好处?
实际开发的过程中,父类类型作为方法形式参数,
传递子类对象给方法,进行方法的调用,更能体
现出多态的扩展性与便利。

4.什么时候需要用到向上转型?什么时候需要用到向下转型

利用父类类型作为形参,传递子类对象,提高代码复用性时用
向上转型;
用父类类型接收子类对象,这时无法访问子类特有的属性和行为,
如果要访问子类只能向下转型为子类类型;

作者: Chidori    时间: 2018-12-11 21:02
1.接口和抽象类的区别?
在功能上:抽象类的作用是共性抽取,而接口的作用是功能拓展在定义内容上:接口中可以有 常量、抽象方法、静态方法、默认方法以及私有方法
抽象类中可以包含 变量 构造方法 成员方法   抽象方法 私有方法

2.继承和实现的区别?
子类只能继承一个父类,但是可以实现多个接口


3.多态有什么好处?
减少代码编写
4.什么时候需要用到向上转型?什么时候需要用到向下转型

想要减少子类(实现类)的对象建立,就可以用到向上转型,建立一个父类对象,可以调用该父类下所有子类的方法
当要调用的方法只存在于子类当中父类当中不存在时,需要向下转型,才能调用

作者: 苏志祥    时间: 2018-12-11 21:04
1.接口和抽象类的区别?
接口:多个类的公共规范
抽象类:包含抽象方法的类
2.继承和实现的区别?
继承:单继承父类
实现:多个实现接口
3.多态有什么好处?
减少代码的编写,增加了代码的拓展性跟便利性。
4.什么时候需要用到向上转型?什么时候需要用到向下转型
实现要转成接口时需要向上转型,多态就是一种向上转型;子类实现自己独有的程序时,需要向下转型。
作者: 李灵杰    时间: 2018-12-11 21:06
1.接口和抽象类的区别?

接口 :用interface关键字来修饰,没有构造方法和static代码块。接口有私有方法,静态方法,成员方法,抽象方法。不能有变量。
抽象类:用adstract关键字来修饰,有构造方法和static代码块。抽象类可以实现接口,胆接口不能继承抽象类



2.继承和实现的区别?
使用继承时,只能单继承或者多级继承;
接口是功能拓展,提供规范的公共标准,不能直接创建对象,只能创建实现类对象来间接调用,需要重写覆盖抽象方法,关键字interface


3.多态有什么好处?
实际开发的过程中,父类类型作为方法形式参数,传递子类对象给方法,进行方法的调用,更能体现出多态的扩展
性与便利。


4.什么时候需要用到向上转型?什么时候需要用到向下转型

多态本身是子类类型向父类类型向上转换的过程,这个过程是默认的。
当父类引用指向一个子类对象时,便是向上转型。


一个已经向上转型的子类对象,将父类引用转为子类引用,可以使用强制类型转换的格式,便是向下转型

父类类型向子类类型向下转换的过程,这个过程是强制的。


作者: 李嘉福    时间: 2018-12-11 21:07
1.接口和抽象类的区别?
抽象类:(关键字abstract)是有抽象方法的类.无法建立对象,是用来被继承的父类.用来进行共性的抽取,提高代码的复用性.
接口:(关键字interface)是多个类的公共规范,是一种引用类型,是用来进行功能的拓展.

2.继承和实现的区别?
继承:单继承,只有一个父类;
实现:多实现,可以实现多个接口.

3.多态有什么好处?
减少代码的编写.

4.什么时候需要用到向上转型?什么时候需要用到向下转型

当父类引用指向一个子类对象时,就是默认使用了向上转型;
当使用多态方式调用方法时,想要调用子类中的特有方法,就需要用到向下转型.

作者: 陈辉阳    时间: 2018-12-11 21:09
.接口和抽象类的区别?
答:接口是多个类的公共规范      抽象是共性抽取
功能扩展                               父类要求子类必须有的方法
2.继承和实现的区别?
答:继承 是单继承                  实现可以 实现多个类
关键字  abstract                    关键字 implements
3.多态有什么好处?
减少代码量.和 代码的复用性
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当父类引用指向一个子类的时候,用 向上转型
当需要使用子类 的特殊 属性和方法的时候 需要用向下转型
作者: 许晓明    时间: 2018-12-11 21:09
1.接口和抽象类的区别?
答:接口使用的是常量,抽象类定义的是变量。
接口的关键字是implements,抽象类的关键字是abstract。
接口不能由静态代码块,也不能由构造方法,抽象类可以有静态代码块和构造方法。
接口的实现类可以承接多个接口,抽象类的子类只能拥有一个父类。
接口实现的是对类的功能拓展,对类的约束,抽象类的实现的是对类的共性抽取,对类的约束。

2.继承和实现的区别?
答:继承只能继承一个父类,实现可以连接多个接口

3.多态有什么好处?
答:多态可以把父类当作形参放入方法中,使所有隶属于该父类的子类对象可以作为实际参数调用该方法,提高代码的复用性。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
答:当多态方式定义子类时,使用的就是向上转型;
当子类(实现类)特有属性或者行为需要表达出来时,需要把父类(接口形式)的变量做向下转型才能表达出特有的属性或者行为。

作者: 董志超Eric    时间: 2018-12-11 21:10
1.接口和抽象类的区别?
答:接口,关键词Interface,抽象类,关键词abstract。一个类只能继承一个抽象类,实现多个接口。抽象类能定义变量,可以有静态代码块,有构造方法;接口只能定义常量,没有静态代码块,没有构造方法。

2.继承和实现的区别?
答:继承是单继承,实现是多实现
3.多态有什么好处?
答:多态的好处是减少代码量,并不能提高代码的执行效率。
4.什么时候需要用到向上转型?什么时候需要用到向下转型
答:向上转型是为了方便使用各个子类共有的方法,共性抽取,减少代码量。格式:父类类型 父类变量名 = new 子类类型;

向下转型是为了使用子类特有的方法。格式:子类类型 子类变量名 = (子类类型)父类变量名


作者: 赵烈刚    时间: 2018-12-11 21:11
1.接口和抽象类的区别?
定义格式不一样,接口不能有构造方法且只能创建常量;抽象类可以有构造方法且初始化变量,还能写静态代码块
2.继承和实现的区别?
继承只能单继承,实现可以多实现;
3.多态有什么好处?
提升代码复用性,减少了重写方法的次数
4.什么时候需要用到向上转型?什么时候需要用到向下转型
为了减少子父类代码的重复率需要用到向上转型;在需要调用子类原先特有的方法和参数使用向下转型,需要instance判断是否转型异常。
作者: 艾卡西亚的惊喜    时间: 2018-12-11 21:13
本帖最后由 艾卡西亚的惊喜 于 2018-12-11 21:36 编辑

一:接口和抽象类的区别:
       1、抽象类可以提供成员方法的实现细节,而接口中只能存在public abstract 方法;
  2、抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是public static final类型的;
  3、接口中不能含有静态代码块以及静态方法,而抽象类可以有静态代码块和静态方法;
  4、一个类只能继承一个抽象类,而一个类却可以实现多个接口。二:继承和实现的区别?
1、修饰不同
不同的修饰符修饰;实现:interface,继承:extends;
2、数量不同
Java只支持接口的多继承,不支持“继承”的多继承;而继承在java中具有单根性,子类只能继承一个父类。
总结为:单继承,多实现。
3、属性不同
在接口中只能定义全局常量(static final),和无实现的方法;而在继承中可以定义属性方法,变量,常量等...
4、调用不同
某个接口被类实现时,在类中一定要实现接口中的抽象方法;而继承想调用那个方法就调用那个方法,毫无压力。
三:多态有什么好处?
1、提高了代码的扩展性。
[color=rgba(0, 0, 0, 0.75)]2、提高了代码的维护性。
[color=rgba(0, 0, 0, 0.75)]四:什么时候需要用到向上转型?什么时候需要用到向下转型
1、当父类引用指向一个子类对象时需要用到向上转型。
2、一个已经向上转型的字类对象,将父类引用转为子类引用时使用向下转型。

玉树临风的林少伟。



作者: 吴洪标    时间: 2018-12-11 21:18
1.接口和抽象类的区别?
答:1.接口用interface关键字修饰,抽象类用abstract关键字修饰;
        2.接口和抽象类都不能建立对象,但是抽象类中可以定义构造方法,而接口中则不能定义构造方法;
        3.一个子类只能继承一个抽象类,但是可以实现多个接口;
        4.抽象类中可以定义成员变量,而接口中只能定义常量,不能定义变量。

2.继承和实现的区别?
答:1.继承是指子类继承父类的属性和方法,实现是指子类实现接口中定义的抽象方法;
        2.一个子类只能继承一个父类,但是可以实现多个接口;
        3.继承用关键字extends,实现用implements。

3.多态有什么好处?
答:1.多态可以实现用同样的代码,实现不同子类的方法调用。如在方法中,参数列表为父类类型,使用时将子类对象传递进去,调用子类的方法,从而实现代码的复用;
        2.在上面的基础上,当有新的子类对象建立时,可以将其直接传递到方法中,而不必修改方法,从而实现了代码的扩展性。


4.什么时候需要用到向上转型?什么时候需要用到向下转型
答:当需要用父类引用指向子类对象时要用到向上转型,即多态;当需要用到子类的特有属性和方法时,又需要将父类类型的变量转回到子类类型,即向下转型。
作者: 陈基林    时间: 2018-12-11 21:19
1.接口和抽象类的区别?
1.接口不能有构造方法抽象类可以有。2.接口的关键字是interface,抽象类的关键字是abstract。
3.抽象类的优点是共性抽取和约束,接口的好处是拓展功能和约束。
2.继承和实现的区别?
继承中,一个类只能继承自一个父类。在实现中 ,一个类可以实现多个接口。
3.多态有什么好处?
多态使得代码具有更好的灵活性,增强代码的复用性。
4.什么时候需要用到向上转型?什么时候需要用到向下转型?

当有多个子类对象时,可以使用向上转型把它当作父类来使用他们的共有属性。这样可以增加代码的复用性,不用去创建多个子类对象。当需要用到各自类中特有的属性和方法时再使用向下转型去实现自己需要的功能。

作者: 李群英    时间: 2018-12-11 21:23
1.接口和抽象类的区别?
接口 关键字interface,是类的共同规范,不能包含构造方法,无法定义成员变量,但是可以定义常量。
抽象类 关键字abstract.是含有抽象方法的类,可以有构造方法和成员变量。
2.继承和实现的区别?
继承是共性抽取,实现是功能拓展。
3.多态有什么好处?
一个对象的多种形态,减少代码编写。
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当父类引用子类对象时向上转型,当已经向上转型的子类对象将父类引用转为子类引用时向下转型。


作者: ab8846254    时间: 2018-12-11 21:25
1.接口和抽象类的区别?
  答:1.抽象类只能单继承,接口可以多实现         2.抽象类里面可以定义方法体,接口里面不能定义方法体
         3.抽象类里面可以定义变量,接口里面不能定义变量,就算定义了int num = 10; 也会被默认加上 public  static final 修饰变成最终的常量,
         4.抽象方法只能声明不能实例化,若要实例化则必须有子类继承 抽象类是重构的结果,接口是设计的结果。
          5.抽象类要被子类继承,接口要被实现。
2.继承和实现的区别?
  答:1.继承为抽象类抽取出来的共性,提高代码的复用性,让子类拥有父类的属性以及成员方法,子类不需要再去重复定义
         2.接口的实现为,其实接口的设计是为了定义统一的规范,让实现该接口的类按照接口的规范编写代码,还有一个功能就是给类提供扩展的属性。
3.多态有什么好处?
   答:1.提高代码的复用性,在方法传参的时候我们的接收类型出可以直接写 父类的类型,所有继承该类的子类创建的对象,可以直接传参进去,不需要定义多个方法。以此              提高代码的复用性,
4.什么时候需要用到向上转型?什么时候需要用到向下转型

答:1.父类的引用指向子类的对象的时候,会需要用到向上转型,
       2.在子类中存在子类自己的特有方法需要被调用的时候需要用到像下转型,
  动物类  dongwu = new 猫();此创建对象的行为为父类动物抽象类的引用指向了子类,具体类的对象像,相当于把猫定义为了动物,但是如果猫中有一些独特的方法,而动物类中没有,就需要把猫在转换会来,需要用到向下转型,格式为    猫 mao = (猫)dongwu   (这里注意之前是什么类型向下转型的时候就要转成什么类型)

作者: 林晨涵    时间: 2018-12-11 21:28
1.接口和抽象类的区别?
(1)接口使用的interface关键字,而抽象使用的是abstract;(2)抽象有成员方法,变量,抽象方法,构造方法,和私有方法,而接口中只能写常量和抽象方法,默认方法,静态方法,和私有方法;
(3)抽象类的功能是共性抽取,和对子类的约束,而接口是功能扩展和多个类的公共约束;
2.继承和实现的区别?
继承只能单继承,而实现可以多实现;
3.多态有什么好处?
减少重复代码的编写!
4.什么时候需要用到向上转型?什么时候需要用到向下转型

   多对象,用向上转类型 可以减少代码编写,不能访问子类中的方法时,就需要向下转类型,以此来调用子类的方法。

作者: 黄海兵    时间: 2018-12-11 21:30
1:抽象类关键字是abstract 接口关键字是interface 接口只有常量 而且不能有构造方法
2:继承是功能抽取 实现是功能拓展
3:减少代码的编写 提高代码的复用性
4:当子类对象不确定时,可以向上转型。 当要用子类的特有功能是、时,需要向下转型
作者: 洪烁铭    时间: 2018-12-11 21:36
本帖最后由 洪烁铭 于 2018-12-11 21:37 编辑

1.接口和抽象类的区别?
接口:用interface关键字;最主要是抽象方法和常量;用实现类implement ,通过创建实现类对象来实现;接口可以多实现;接口中不能由构造方法和静态代码块;抽象类:用abstract ;可以没有抽象方法;用非抽象子类继承后创建对象来使用;抽象类只能单继承;抽象类中有构造方法,在创建子类对象后初始化变量。

2.继承和实现的区别?
继承:用extends关键字; 单继承;非抽象父类可以创建对象;当父类不是抽象类时,继承后可以不用改写方法;
实现:用implement关键字;多实现;要实现的方法是无法直接创建对象的;实现必须进行方法的改写;

3.多态有什么好处?
多态使程序写的更简单,并有良好的拓展。通过定义父类为参数,可以实现用一个方法传递不同子类作为参数去调用方法,达到减少代码的使用。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
当用多态创建对象时,则会向上转型。当需要变成父类,去调用方法时,就需要向上转型。当需要用到子类特有的方法时,则需要向下转型,才能调用。



作者: 杨馥榕    时间: 2018-12-11 21:37
1.接口和抽象类的区别?
抽象的功能和接口不一样
抽象:共性抽取;约束(父类要求子类必须具有的方法)
接口:功能拓展;约束(多个类的公共规范)
2.继承和实现的区别?
答:继承是由子类继承父类,但是只能单继承父类;

而实现是可以实现多个接口;
3.多态有什么好处?

答:可以使程序编写的更简单,并有良好的扩展。
4.什么时候需要用到向上转型?什么时候需要用到向下转型?
答:当子类没有的可以向上找父类:这时候用到向上转型;
当需要特殊子类的属性以及方法的时候,(父类是不会向下找子类的)所以运用到向下的转型。

作者: 王宇鹏    时间: 2018-12-11 21:37
1.接口和抽象类的区别?
接口使用interface关键字而抽象使用abstract

2.继承和实现的区别?
继承是单继承而实现可多实现

3.多态有什么好处?
提高代码的复用性
4.什么时候需要用到向上转型?什么时候需要用到向下转型
调用父类与子类共有的方法用向上转型。调用对象自己独有的方法用向下转型
作者: Java中的莫Q哇啦    时间: 2018-12-11 21:42
本帖最后由 Java中的莫Q哇啦 于 2018-12-11 21:48 编辑

1.接口和抽象类的区别?

接口和抽象类有点相似都是要传给下一个类来使用的,差异在接口的方法里必须包含有抽象方法,抽象类里不一定包含有抽象方法。

2.继承和实现的区别?

继承只能是单继承,而实现是可以多实现。

3.多态有什么好处?

减少代码的重复编写,为程序员的减少重复的工作量,保护程序员的头发

4.什么时候需要用到向上转型?什么时候需要用到向下转型?

当只需要用到多个子类的父类内容时,而不需要用到各子类的内容的时候,就可以选择向上转型来减少代码的重复编写。当需要用到子类的独有内容时,就得向下转型来访问子类的内容。
                                       黄成成
作者: 林文悦    时间: 2018-12-11 21:47
1.接口和抽象类的区别?
接口:用interface;不可以定义构造方法;不能定义变量只能定义常量;
抽象:用abstract;可以定义构造方法;可以定义变量。

2.继承和实现的区别?  
继承:继承是单继承;共性抽取;继承用extends关键字;
实现:实现是多实现;功能拓展;实现用implements关键字;
继承是指子类继承父类的属性和方法,实现是指子类实现接口中定义的抽象方法;

3.多态有什么好处?  
减少代码编写,提高代码的扩展性和复用性。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
多态本身是子类类型向父类类型向上转换的过程,这个过程是默认的。 当父类引用指向一个子类对象时,便是向上转型。   
父类类型向子类类型向下转换的过程,这个过程是强制的。 一个已经向上转型的子类对象,将父类引用转为子类引用,可以使用强制类型转换的格式,便是向下转型。   



作者: 王宏    时间: 2018-12-11 21:47
1.接口和抽象类的区别?
接口定义常量,抽象类只能定义变量,接口没有构造方法不用初始化且没有静态代码块,抽象类需要构造方法初始化,可以有静态代码块

2.继承和实现的区别?
继承是共性抽取,实现是功能拓展,继承是但继承,实现是多接口实现

3.多态有什么好处?
多态可以减少代码的编写量,让代码变简单

4.什么时候需要用到向上转型?什么时候需要用到向下转型
当使用多态的时候,就是向上型,当想要用子类的特有方法时,就需要用到向下型
作者: 续扬    时间: 2018-12-11 21:48
1.接口和抽象类的区别?
接口是抽象的不存在方法的实现,抽象类有默认的方法实现
接口使用implements抽象类使用extends
接口只可以继承一个接口或多个其他接口,抽象方法可以继承一个类和现实多个接口
接口默认修饰符只有public,抽象方法可以有public protected default这些修饰符
接口添加新方法必须改变显示接口的类,抽象会提供默认的实现不需要改变现在的代码

2.继承和实现的区别?
继承是共性抽取,实现是功能拓展
一个类继承一个父类,实现多个接口

3.多态有什么好处?
增强方法的扩展性和复用性。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
减少子类方法的调用时向上默认转型
当需要方便使用子类的特性方法时向下强制转型
作者: 黄嘉宏    时间: 2018-12-11 21:50
1.接口和抽象类的区别?
使用的关键字不同。接口使用interface,抽象用abstract。
接口是多个类的公共规范和功能拓展,抽象类是共性抽取,是父类对子类的约束。
接口定义的内容常量,抽象方法,默认方法,静态方法和私有方法。抽象类定义的内容变量,成员方法,抽象方法,构造方法和私有方法。
2.继承和实现的区别?
继承只能单继承,子类只能有一个父类。实现却能多实现,可以实现多个接口。
继承只能抽取共有的东西,实现除了共有的东西还能拓展非共有的。
3.多态有什么好处?
减少代码编写。
4.什么时候需要用到向上转型?什么时候需要用到向下转型
当子类对象不确定时,而父类拥有子类共性时,为了减少代码编写,需要用到向上转型 。
需要调用子类特有的方法时,需要用到向下转型。





作者: 李柏刚    时间: 2018-12-11 21:50
1.接口和抽象类的区别?
接口可以多实现,接只能做方法的声明,没有构造方法,可以有静态方法,私有方法,必须为常量而且必须被赋值,抽象类只能单继承,可以做方法的声明,可以有构造方法,抽象类方法不能是静态的,不能是私有方法。
2.继承和实现的区别?
继承:是共性抽取;当多个类中有相同的属性和行为的时候,将这些内容单继承给子类,子类可以直接通过调用来实现功能,提高代码复用性。
实现:是功能拓展;接口的实现是给对象提供一个规范,定义对象共有的,需要实现的方法,多实现给不同的类,达到功能的拓展,提高代码的复用性。
3.多态有什么好处?
   代码复用性更高,节省代码量
   可以直接使用父类来当参数列表,直接传递调用同一种方法。无需使用非常多的对象类型来获取方法。
4.什么时候需要用到向上转型?什么时候需要用到向下转型

   当子类对象不确定时,可以将子类向上转换成父类,从而提高代码复用性,和方法的拓展性。
   当需要使用子类的特有方法时,就需要用到向下转型。
作者: 陈益源    时间: 2018-12-11 21:56
1.接口和抽象类的区别?
1.接口没有静态的代码块或者构造方法,抽象类需要构造方法创建对象并初始化值;
2.接口是功能拓展,抽象类是共性抽取;
3.接口关键字:interface,抽象类关键字:abstract;
4.接口包括常量、抽象方法、默认方法、静态方法、私有方法,抽象类包括成员变量、成员方法、构造方法、抽象方法、私有方法;

2.继承和实现的区别?
继承是共性抽取,实现是功能拓展
继承只能是单继承,就是只有唯一一个直接父类,而实现可以实现多个接口

3.多态有什么好处?
减少代码编写

4.什么时候需要用到向上转型?什么时候需要用到向下转型
当父类引用指向一个子类对象时,便是向上转型。
当需要调用实现类自己的方法时需要向下转型




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2