-
对java多态的理解
-
多态是指:父类引用指向子类对象,在执行期间判断多引用对象的实际类型,根据其实际的类型调用其相应的方法。(同一消息可以根据发送对象的不同而采用多种不同的行为方式。
-
多态的作用:消除类型之间的耦合关系。
-
实现多态的技术称为:动态绑定,是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。
-
实现多态的三个要素:继承,重写,父类引用指向子类对象(即 声明是父类,实际指向的是子类的一个对象)。
-
String ,String Buffer,StringBuilder的区别?
-
执行速度上:StringBuilder>StringBuffer>String(由于String是常量,不可改变,拼接时会重新创建新的对象)。
-
StringBuffer是线程安全的,StringBuilder是线程不安全的。(由于StringBuffer有缓冲区)
-
什么是内部类?内部类的作用?
-
内部类:将一个类定义到另一个类里面,这样的类称为内部类。
-
作用:1,每个内部类都能独立的继承一个接口的实现,所以无论外部类是否已经继承了某个(接口或类的)实现,对于内部类都没有影响,内部类使得多继承的解决方案变得完整。
-
2,方便将存在一定逻辑关系的类组织在一起,又可以对外界隐藏。
-
3,方便编写事件驱动程序。
-
4,方便编写线程代码。
-
抽象类和接口区别?
-
相同:1,都能被继承。
-
2,继承了的类必须将为实现的函数实现。
-
3,只关注方法的定义,不关注方法的实现。
-
差异:1,一个子类可以继承多个接口,但是只能继承一个父类。
-
2,抽象类在对象中只能表示一种对象,接口可以被很多对象继承。
-
抽象类与接口的应用场景?
-
如果你拥有一些方法并且想让它们中的一些有默认实现,那么就使用抽象类。
-
如果你想实现多继承,那咱就用接口,由于Java不支持多继承,子类不能继承多个类,但可以实现多个接口,所以说来就用接口。
-
泛型中extends 和 super的区别?
-
1, <?extends T>限定了参数类型的上界:参数类型必须是T或T的子类型 <? super T>:是指 “下界通配符限定参数类型的下界:参数类型必须是T或者T的超(父)类型。
-
2,只能用于方法返回,告诉编译器此返参的类型的最小继承边界为T,T和T的父类都能接收,但是入参类型无法确定,只能接收null的传入,只能用于限定方法入参,告诉编译器入参只能是T或其子类型,而返参只能用Object类接收既不能用于入参也不能用于返参。
Java基础背诵(一)
最新推荐文章于 2022-09-02 15:38:32 发布