final关键字、多态、抽象类、接口的小复习

--------------------------------------- 1:final关键字可以干什么?有什么特点?   最终的意思。可以修饰类,方法,变量。     它修饰类,类不能被继承。     它修饰方法,方法不能被重写。     它修饰变量,变量是常量。且没有默认初始化,只能初始化一次。 --------------------------------------- 2:final关键字的面试题? A:修饰局部变量     基本类型:值不能改变。     引用类型:地址值不能改变,内容可以改变。 B:变量常见的初始化时机     定义的时候。     在构造代码块中给值。     构造方法中。 --------------------------------------- 3:多态是什么,前提是什么?   同一个对象在不同时刻表现出来的不同的状态。   A:有继承或者实现关系。   B:有方法的重写。   C:有父类或者父接口引用指向子类对象。 --------------------------------------- 4:多态中对成员的访问的特点? 成员变量:     编译看左边,运行看左边。 成员方法:     编译看左边,运行看右边。 静态方法:     编译看左边,运行看左边。 --------------------------------------- 5:多态的好处及弊端?如何解决多态的弊端? 好处:     维护性和扩展性。 弊端:

    父类不能使用子类特有功能。 如何解决呢?     A:创建子类对象。(在内存中会多了一个对象)     B:向下转型。 --------------------------------------- 6:什么是向上转型?什么是向下转型?   子 -> 父   父 -> 子 --------------------------------------- 7:多态练习   自己做 --------------------------------------- 8:抽象类概述及其特点? 抽象类:继承的时候,提取了多个方法,而有些方法不是每个子类都是一模一样的实现,       这个时候,就应该把这样的方法不提供具体实现,而不提供具体实现的方法是一个抽象方法。       在一个类中,如果有抽象方法,该类必须定义为抽象类。 特点:     A:抽象类或者抽象方法由abstract修饰。     B:抽象类中不一定有抽象方法,但是有抽象方法的类一定是抽象类。     C:抽象类不能被实例化。     D:抽象类的子类:       a:是抽象类。       b:是具体类,要重写所有抽象方法。 --------------------------------------- 9:抽象类成员特点? A:成员变量     有变量,有常量。 B:构造方法     有。用于子类访问父类数据的初始化。 C:成员方法     有抽象方法,有非抽象方法。 --------------------------------------- 10:抽象类练习? --------------------------------------- 11:抽象类的小问题 A:一个类如果没有抽象方法,可不可以定义为抽象类?如果可以,有什么意义?     答:抽象类可以没有抽象方法,但是如果你的一个类已经声明成了抽象类,       即使这个类中没有抽象方法,它也不能再实例化,即不能直接构造一个该类的对象。       如果一个类中有了一个抽象方法,那么这个类必须声明为抽象类,否则编译通不过。 意义:就是不让其他类创建本类对象,而是交给子类完成,防止乱用。 B:abstract不能和哪些关键字共存:     final 冲突     private 冲突     static 无意义 --------------------------------------- 12:接口的概述及其特点? 接口:某个继承体系需要扩展功能的时候,就应该实现接口。 特点:     A:接口用interface修饰。     B:类实现接口用implements修饰。     C:接口不能实例化。     D:接口的实现类:       a:是抽象类。       b:是具体类,重写接口中的所有抽象方法。 --------------------------------------- 13:接口的成员特点?   A:成员变量 静态常量   B:成员方法 抽象的方法 --------------------------------------- 14:抽象类和接口的区别?   A:成员区别   B:关系区别   C:设计理念区别     "is a"     "like a" --------------------------------------- 15:接口的练习? --------------------------------------- 16:案例   猫狗案例,加入跳高的额外功能。   老师和学生案例,加入抽烟的额外功能。   教练和运动员案例(学生分析然后讲解) ---------------------------------------

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器学习算法与Python学习

python: sort, sorted, reverse

python语言中的列表排序方法有三个:reverse反转/倒序排序、sort正序排序、sorted可以获取排序后的列表。在更高级列表排序中,后两中方法还可以加...

3678
来自专栏测试开发架构之路

C和指针小结(C/C++程序设计)

C和指针 相关基础知识:内存的分配(谭浩强版) 1、整型变量的地址与浮点型/字符型变量的地址区别?(整型变量/浮点型变量的区别是什么) 2、int *p,指向整...

33711
来自专栏mathor

1小时掌握c++面向对象编程

使用对象指针实参仅将对象的地址值传递给形参,而不进行副本的拷贝,这样可以提高运行效率,减少时间开销

751
来自专栏WindCoder

在数组中查找次大值,并与最后一个元素交换—C语言

1741
来自专栏流媒体

C++类大小和静态成员/方法

925
来自专栏编程

Python基础知识2:字典

字典一种key - value 的数据类型,就像上学用的字典通过拼音查找汉字一样;字典是Python语言中唯一的映射类型。字典对象是可变的,它是一个容器类型,能...

23210
来自专栏从零开始学 Web 前端

从零开始学 Web 之 JS 高级(二)原型链,原型的继承

原型链表示的是实例对象与原型对象之间的一种关系,这种关系是通过__proto__原型来联系的。

1153
来自专栏Android干货

Python正则表达式

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过...

1342
来自专栏Jed的技术阶梯

详解 final 修饰符

被 final 修饰的实例变量必须显示的指定初始值,而且只能在以下3个位置指定初始值:

1484
来自专栏黑泽君的专栏

Java继承中的几道面试题

972

扫码关注云+社区

领取腾讯云代金券