首页 > 试题广场 >

选项中哪一行代码可以替换 add code here 而

[单选题]

选项中哪一行代码可以替换 //add code here 而不产生编译错误

public abstract class MyClass {
     public int constInt = 5;
     //add code here
     public void method() {
     } 

}

  • public abstract void method(int a);
  • consInt=constInt+5;
  • public int method();
  • public abstract void anotherMethod(){}
推荐

A是抽象方法,抽象类可以包含抽象方法,也可以不包含,实现重载。(√)

B 在类中不能constInt = constInt + 5(×)
C 返回值不能作为重载的依据(×)
D 有方法体的不能作为抽象函数(×)
编辑于 2017-03-03 09:58:58 回复(26)
A:抽象类可以包含抽象方法
B:类中定义成员和方法,不能直接进行运算,可以写在代码块{}或者静态代码块中static{}中
C: 与第四行想要构成重载,二者区别是返回类型,但是返回类型不能作为重载的依据
D: 该方法使用abstract修饰,是抽象方法,但是他有方法体(带有{}的就是方法体,即使里面是空的),就不能作为抽象方法
发表于 2017-12-04 12:10:12 回复(8)
B中,如果需要用表达式赋值,可以写成 代码块的形式。如下 { constInt = constInt + 5; } 等价于写在构造函数里。 如果是静态变量,则是静态代码块 static { ........ }
发表于 2017-03-04 10:44:32 回复(1)

A

B.类中不能直接进行运算,可以写在代码块和静态代码块中

C.和method()重复了

D.abstract不能有{}

发表于 2017-04-03 15:56:58 回复(0)
先说B,错误,不是类变量,需要通过实例才能调用;C,实体方法却没有函数体,因此错误;d,错误,抽象的方法不能有函数体
发表于 2017-03-22 08:03:10 回复(2)

答案是A

A是抽象方法,抽象类可以包含抽象方法,也可以不包含,虽然A 方法名是method,与题目中的方法同名,但是参数不同,是重载方法
B 在类中不能constInt = constInt + 5;  方法中可以
C 的方法名与题目中的方法名相同,返回值不能作为重载的依据
D 抽象方法没有方法体
发表于 2016-12-11 15:19:44 回复(1)
在类中(类方法的外面)不允许进行加减乘除等等表达式逻辑操作,一定需要的话必须要用{}包裹起来,这时相当于在构造函数中。
发表于 2017-03-09 15:51:49 回复(1)

抽象类可以进行重载,但是需要主要几点,重载和 修饰符、返回类型不挂钩,也就是 当方法名和方法参数一致时,不管修饰符和返回类型是否一样,都会重载失败(出现错误)
根据题意分析选项:
A、普通方法和抽象方法可以实现重载 故A正确
B、如果该计算表达式在代码块内(花括号 { } 代表代码块)则成立 故B错误
C、重载失败,因为方法参数一致 故C错误
D、抽象方法,所以不能有方法体 故D错误

发表于 2019-02-20 11:06:59 回复(0)

会产生编译错误吗???并不会把,抽象类也可以没有抽象方法啊。

发表于 2017-02-24 09:43:15 回复(0)
-2头像 -2
A 是没有分号结束的。

发表于 2016-12-14 10:49:20 回复(3)
抽象方法,有声明无实体
发表于 2022-03-05 15:17:09 回复(1)
1.抽象类不能实例化,所以必须被继承 2.抽象类可以不含抽象方法,但含有抽象方法的类一定是抽象类 3.继承抽象类的类必须实现抽象类中的抽象方法或将自己声明为抽象类 4.抽象方法没有方法体,具体实现由子类决定
发表于 2021-11-13 09:53:16 回复(0)
public int method() 你们都说重载失败,所以不选它?这跟重载有关系吗?因为它不是抽象方法,缺失方法体所以才不对吧
发表于 2021-06-12 15:00:29 回复(0)
抽象方法没有方法体,抽象类不能进行运算。
发表于 2021-12-23 13:43:41 回复(0)
A:抽象类可以包含抽象方法
B:类中定义成员和方法,不能直接进行运算,可以写在代码块{}或者静态代码块中static{}中
C: 与第四行想要构成重载,二者区别是返回类型,但是返回类型不能作为重载的依据
D: 该方法使用abstract修饰,是抽象方法,但是他有方法体(带有{}的就是方法体,即使里面是空的),就不能作为抽象方法
发表于 2021-09-28 17:20:21 回复(0)
B:在类中不能直接进行运算,要在代码块中
发表于 2021-09-27 17:26:27 回复(0)
类中定义成员和方法,不能直接进行运算,可以写在代码块{}或者静态代码块中static{}中
发表于 2021-09-21 12:37:07 回复(0)
b要放在方法体里
发表于 2021-08-25 08:43:46 回复(0)
MyClass是抽象类,抽象类可以有抽象方法也可以有一般方法,抽象方法不能有方法体即{}
发表于 2021-05-27 10:31:50 回复(0)
<p>D abstract 修饰的方法不能有方法体。</p>
发表于 2020-12-23 19:22:59 回复(0)
A:选项返回值和方法method相同,形参不同构成重载

发表于 2020-12-14 10:28:41 回复(0)