JavaSE进阶-final修饰的类与接口基础语法

发布于 2020-09-01  1850 次阅读


final

1,final是java语言中的一个关键字。
2,final表示:最终的,不可变的。
3,final可以修饰变量以及方法,还有类等.
4,final修饰的变量?
final修饰的局部变量,不能重新赋值。
5,final修饰的方法?
final修饰的方法无法被覆盖,被重写.
6,final修饰的类?
final修饰的类无法继承。
7,final控制不了能不能调用的问题. final管的是啥?
final修饰的表示最后的,不能变的,不能改的。
8,final修饰的引用:
该引用只能指向1个对象,并且它只能永远指向该对象,无法再指向其它对象。
并且在该方法执行过程中,该引用指向对象之后,该对象不会被垃圾回收器回收。
直到当前方法结束,才会释放空间.
9,final修饰的实例变量呢?
《重点:万变不离其宗》 : final修饰的变量只能赋值一次。(这句话到哪里都好使.)
你是否还记得:实例变量如果没有手动赋值的话,系统会赋默认值。
终极结论:
final修饰的实例变量,系统不负贡默默认值,要求程序员必须手动赋值。
这个手动赋值,在变量后面赋值可以,在构造方法中赋值也可以。
实例变量赋默认值是在构造方法执行的时候所以赶在系统赋默认值之前赋值就可以
10,final修饰的实例变量,必须手动赋值。
《重点》 final修饰的变量,只能赋一次值.
final修饰的实例变量一般添加static修饰。
终极结论:
statia final联合修饰的变量称为"常量".
常量名建议全部大写,每个单词之间采用下划线衔接。
常量:实际上常量和静态变量一样,区别在于:
常量的值不能变。
常量和静态变量,都是存储在方法区,并且都是在类加载时初始化.

我的总结

  1. final关键字
    1.1, final修饰的类无法继承。
    1.2, final修饰的方法无法覆盖。
    1.3, final修饰的变量只能赋一次值。
    1.4, final修饰的引用一旦指向某个对象,则不能再重新指向其它对象,但该引用
    指向的对象内部的数据是可以修改的
    1.5, final修饰的实例变量必须手动初始化,不能采用系统默认值
    1.6, final修饰的实例变量一般和static联合使用,称为常量。
    public static final double PI = 3.1415926;

接口基础语法

接口的基础语法:
1、类和类之间叫做继承,类和接口之间叫做实现。
别多想:你仍然可以将"实现"看做"继承".
继承使用extends关键字完成.
实现使用implements关键字完成.
2、五颗星: 当一个非抽象的类实现接口的话,必须将接口中所有的
抽象方法全部实现(覆盖、重写)

3.一个接口可以继承多个接口(支持多继承)
重点(五颗星) :一个类可以同时实现多个接口这一点弥补了java中单继承带来的缺陷
4.继承和实现都存在的话,代码应该怎么写?
extends关键字在前
1mplements关键字在后

我的总结

1、抽象类和接口以及抽象类和接口的区别。
2、接口的基础语法
1、接口是一种,引用数据类型".
2、接口是完全抽象的.
1、接口怎么定义: 【修饰符列表] interface接口名{}
4、接口支持多继承。
5、接口中只有常量+抽象方法.
6、接口中所有的元素都是public修饰的
7、接口中抽象方法的public abstract可以省略.
8、接口中常量的public static final可以省略.
9、接口中方法不能有方法体。
10、一个非抽象的类,实现接口的时候,必须将接口中所有方法加以实现.
11、一个类可以实现多个接口
12, extends和implements可以共存, extends在前, implements在后
13、使用接口,写代码的时候,可以使用多态(父类型引用指向子类型对象).

届ける言葉を今は育ててる
最后更新于 2021-01-03