7.13 ljy

1:代码块是什么?代码块的分类和各自特点?

{}中括起来的被称为代码块

2:静态代码块,构造代码块,构造方法的执行流程?

类加载.静态代码块执行,且只执行一次

构造代码块 (初始化块)

在类中方法外出现;多个构造方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行

局部代码块

* 在方法中出现;限定变量生命周期,及早释放,提高内存利用率

 

 

3:继承概述

让类与类之间产生关系,子父类关系

4:继承的好处

提高了代码的复用性

提高了代码的维护性

让类与类之间产生了关系,是多态的前提

5:Java中继承的特点

只能单继承不能多继承,可以多层继承.,一父一子可以有爷

 

 如果想用这个体系的所有功能用最底层的类创建对象

如果想看这个体系的共性功能,看最顶层的类

 

6:Java中继承的注意事项?以及我们什么时候使用继承?

子类只能继承父类所有非私有的成员(成员方法和成员变量)

* b:子类不能继承父类的构造方法,但是可以通过super(马上讲)关键字去访问父类构造方法。

* c:不要为了部分功能而去继承

7:继承中的成员访问特点
A:成员变量
this.成员变量 调用本类的成员变量,也可以调用父类的成员变量(本类中没有的情况下)

super.成员变量 调用父类的成员变量


B:成员方法

 this.成员方法 调用本类的成员方法,也可以调用父类的方法(本类中没有的情况下)

super.成员方法 调用父类的成员方法


在测试类中通过子类对象去访问一个方法

8:继承中构造方法的执行流程?假如父类没有无参构造方法,子类应该怎么办?

子类的构造方法的第一行中都默认有super();

先执行父类的无参构造

子类的无参构造里用this(加入参数);将参数导给子类的有参构造

1 this();super();不能共存

super(里面加入有参构造的参数);可以走父类的有参构造

 

 

9:面试题:
方法重写和方法重载的区别?方法重载能改变返回值类型吗?
Overload 方法名一样,参数列表不同,与返回值类型无关
Override 子类出现了与父类方法声明一样的方法,与返回值类型有关,返回值一样;

this关键字和super关键字分别代表什么?以及他们各自的使用场景和作用。

 this: 代表当前对象的引用,谁来调用我,我就代表谁

super:代表当前对象父类的引用

10:继承案例练习

 

11:final关键字可以干什么?有什么特点?

表示最终;

修饰类,类不能被继承
修饰变量,变量就变成了常量,只能被赋值一次

修饰方法,方法不能被重写

12:final关键字的面试题?
A:修饰局部变量

修饰基本类型 是表示其值不能改变

修饰引用类型,是地址值不能被改变
B:初始化时机

显示初始化修饰, final int num = 1;不能不赋值,

赋值在构造完毕前完成就行

原文地址:https://www.cnblogs.com/lijuenyi/p/9303827.html