7-21 关于 final 的作用

简介: 7-21 关于 final 的作用

分数 15

全屏浏览题目

切换布局

作者 刘凤良

单位 天津仁爱学院


修改给定的程序,使得程序能顺利运行,且结果如下:

speedlimit=120
running safely with 100kmph
running safely with 100kmph

根据提示,在下面编辑器中根据编译的错误提示修改源程序。

/* 请在下面的 Begin 和 end之间修改源程序。 不可以修改 final 变量的值 final方法,不可以重写 不可以定义final 类 */ public class Main { public static void main(String args[]) { Bike1 obj = new Bike1(); obj.run(); Honda honda = new Honda(); honda.run(); Yamaha yamaha = new Yamaha(); yamaha.run(); } } /********** Begin *********/ class Bike1 { final int speedlimit = 90; void run() { speedlimit = 120; System.out.println("speedlimit=120"); } } class Bike2 { final void run() { System.out.println("running"); } } class Honda extends Bike2 { void run() { System.out.println("running safely with 100kmph"); } } final class Bike3 { } class Yamaha extends Bike3 { void run() { System.out.println("running safely with 100kmph"); } } /********** end *********/

输入样例:


输出样例:

speedlimit=120
running safely with 100kmph
running safely with 100kmph
/* 请在下面的 Begin 和 end之间修改源程序。 
  不可以修改 final 变量的值
  final方法,不可以重写
  不可以定义final 类
*/
public class Main {
    public static void main(String args[]) {
        Bike1 obj = new Bike1();
        obj.run();
 
        Honda honda = new Honda();
        honda.run();
 
        Yamaha yamaha = new Yamaha();
        yamaha.run();
    }
}
 
/********** Begin *********/
class Bike1 {
    final int speedlimit = 90;
 
    void run() {
        //speedlimit = 120; 
        System.out.println("speedlimit=120");
    }
}
 
class Bike2 {
    final void run() {
        System.out.println("running safely with 100kmph");
    }
}
 
class Honda extends Bike2 {
 
}
 
 class Bike3 {
    final void run() {
        System.out.println("running safely with 100kmph");
    }
}
 
class Yamaha extends Bike3 { 
    // void run() {
    //     System.out.println("running safely with 100kmph");
    // }
}
/********** end *********/
相关文章
|
6月前
|
存储 Cloud Native Linux
C++ 关键字override,final的作用
C++ 关键字override,final的作用
|
5月前
|
C++
【C++11特性篇】C++11中の【override】【final】关键字——帮助用户检测是否重写
【C++11特性篇】C++11中の【override】【final】关键字——帮助用户检测是否重写
|
9月前
|
Java
深入理解static的作用以及被static修饰的变量、方法、块
static关键字有以下三种使用方法: 1.被static修饰的变量属于静态变量,类变量,可以通过类名,变量名直接引用,不需要进行new一个新类。 2.被static修饰的方法属于静态方法,类方法,可以通过类名,方法名直接引用,而不需要new出来一个对象 3.静态块,用于初始化一个类的时候进行一些操作,静态变量、静态方法和静态代码块都只执行一次,而且只在初始化的时候执行。
208 1
|
9月前
|
Java
关键字final
关键字final
26 0
|
11月前
|
存储 C语言
static的作用
static的作用
128 0
|
编译器
public final static搭配的好处
final 和 static 往往搭配使用,效率更高,不会导致类加载.底层编译器做了优化处理
149 0
public final static搭配的好处
Java常用关键字(final,abstract,instanceof,static)简介
1.final关键字 1.1final关键字基本介绍 (1)用来修饰类,在JDK中,被设计为final类的有String、System等。 当用final修改类时,该类成为最终类,无法被继承。简称为“断子绝孙类”。 (2)用来修饰一个方法 当使用final修饰方法时,这个方法将成为最终方法,无法被子类重写。但是,该方法仍然可以被继承。 (3)final修饰变量, ①如果是基本数据类型的变量,则其数值一旦在初始化之后便不能改变; ②如果是对象类型的变量,只能保证它的引用不变,但对象的内容是可以改变的
|
PHP 开发者
最终类 final|学习笔记
快速学习最终类 final,前面说的 PHP 是可以继承的,类是可以继承的,类有我可以继承子类,再往后类又可以继承孙子类,类可以无无限继承,现在确定一个问题,类继承的多了,代表类的重用性增加了,但是系统的解析复杂程度会增加,随之而来的是效率的降低。 那如果有些类已经达到最小的程度,无法再扩展时,或者不需要继续扩展了,这个时候就要使用最终类 final。现在了解一些什么是最终类,掌握 final 关键字的最终作用和实际应用场景。
128 0
最终类 final|学习笔记
|
设计模式 安全 Java
区区final和static,竟然隐藏着这么多知识点!
这是我端午节去西湖玩的时候照的照片。那天的天气很善变,早上出门的时候是阴云密布,中午突然就变成了蓝天白云,艳阳高照,到了下午又变成倾盆大雨。 有人说,人的心情、行为等都可能受到环境影响。我不否认这个理论,但我们可以降低环境对我们的影响。天气也好,家庭出身也好,曾经的经历也好,学习、工作环境也好。这些都算是一些客观的环境因素,影响情绪的大概率不是环境本身,而是我们的态度。晴天也好,雨天也罢,你若尝试喜欢,那便是好天气。
202 0
|
消息中间件 前端开发 JavaScript
final 关键字,你想知道的都在这里
PS:最近又赶上跳槽的高峰期,好多粉丝,都问我要有没有最新面试题,我连日加班好多天,终于整理好了,16000+ 道,295多份,多份面试题大全,我会持续更新中,马上就会整理更多!【文末有领取方式】
final 关键字,你想知道的都在这里