final、权限、内部类

如题所述

第1个回答  2022-06-01

final 不可改变,可以用于修饰类、方法、变量

像 String、Math、Scanner这些类都是被final修饰,目的是供我们呢使用,而不让我们修改。

如果重写final修饰的方法,编译会报错

下面哪个可以通过编译
写法一:

写法二:

写法一会报错, 写法二会通过编译, 因为每次循环, 都是一个新的c

被final修饰的常量名称, 一般字母都大写
构造方法初始化

不同的访问权限修饰符修饰时, 被修饰的内容会有不同的访问权限

将类A定义在另一个类B中,里面的类A就是内部类, B是外部类

在描述事物时, 若一个事物内部还包含其他事物,就可以使用内部类这种结构, 比如Car中包含Engine, Engine就可以使用内部类来描述

匿名内部类: 是内部类的简化写法,它本质是一个 带具体实现的 父类或者父接口的匿名子类对象。开发中, 最常用到的内部类就是匿名内部类
以接口为例,当你使用一个接口时, 似乎需要如下几步:

通常在方法的形参是接口或者抽象的时候, 也可以讲匿名内部类作为参数传递

简化

接口作为成员变量, 对它进行赋值操作, 实际上赋给他该接口的子类的对象

当接口作为方法的参数和返回值类型,传递和返回的都是他的子类对象
原来我们这样做

接口作为方法的参数和返回值类型, 我们这样做

相似回答