错误如下:
在Bike1类中,speedlimit被声明为final,这意味着它的值一旦被初始化就不能再改变。所以,我们不能在run方法中修改speedlimit的值。
在Honda类中,程序试图重写Bike2类的run方法,但是run方法在Bike2类中被声明为final,这意味着它不能被重写。
在Yamaha类中,程序试图继承Bike3类,但是Bike3类被声明为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();
- }
- }
- class Bike1 {
- final int speedlimit = 90;
- void run() {
- System.out.println("speedlimit=" + speedlimit);
- }
- }
- class Bike2 {
- void run() {
- System.out.println("running");
- }
- }
- class Honda extends Bike2 {
- @Override
- void run() {
- System.out.println("running safely with 100kmph");
- }
- }
- class Bike3 {
- void run() {
- System.out.println("running");
- }
- }
- class Yamaha extends Bike3 {
- @Override
- void run() {
- System.out.println("running safely with 100kmph");
- }
- }
复制代码