objectTest4{defadd(i:Int)(implicity:Int=100):Int=i+ydefmain(args:Array[String]):Unit={implicitvalabc:Int=300implicitvala:Double=300.0varadd2=add(2)(101);println(add2)}}()A、102B、103C、302D、编译出现错误,有3个相同类型的隐式值

题目

objectTest4{defadd(i:Int)(implicity:Int=100):Int=i+ydefmain(args:Array[String]):Unit={implicitvalabc:Int=300implicitvala:Double=300.0varadd2=add(2)(101);println(add2)}}()

  • A、102
  • B、103
  • C、302
  • D、编译出现错误,有3个相同类型的隐式值
参考答案和解析
正确答案:B
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下面程序段的输出结果是( )。 public class Test{ public static void main(String args[]){ int X,y; x=(int)Math.sqrt(5)/2+(int)Math.random*5/2; y=(int)Math.sqrt(3)/2+(int)Math.random*3/2; if(x>v) System.OUt.println("x>y"); elseif(x= =y) System.out.println("x=Y"); else System.out.println("x<y"): } }

A.x>y

B.x=Y

C.x<y

D.编译错误


正确答案:A
A。【解析】本题考查Java语言中if-else分支结构和几个标准函数语句的用法。本题中赋值号右边的两个表达式分别求两个标准函数的值,再进行整除,判断出x与y的大小。Math.sqrt计算一个数的平方根,Math.random输出[0,1)之间的随机数,本题中经过两条赋值语句后,x=1,y=0。进入分支结构后,满足if条件执行相应System.out.println("x>y");操作。

第2题:

下面程序段的输出结果是 class Base { int i; Base() { add(1); } void add(int v) { i+=v; } void print() { System.out.println(i); } } class Extension extends Base { Extension() { add(2); } void add(int v) { i+=v*2; } } public class Test { public static void main(String args[]) { bogo(new Extension()); } static void bogo(Baseb){ b.add(8); b.print(); } }

A.9

B.18

C.20

D.22


正确答案:D
解析:本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是Extension类的实例,在运行时,从main()函数进入程序,所有调用add()方法的过程将始终和Extension类的add()方法动态绑定。初始值:i=0;创建实例new Extension();先调用父类的默认构造函数Base(),并在父类的默认构造函数中执行add(1),i=0+1×2,所以i=2,再调用子类的默认构造函数Extension(),子类的默认构造函数中执行add(2),i=2+2×2,所以i=6;执行add(8);i=6+8×2,因此,最终i=22,正确答案为选项D。

第3题:

下面程序段的输出结果是( )。 public class Test {public static void main(String args[]){ int[] a=new int[11]; int[] p=new int[4]; int k=5; for(int i= 1 ; i<= 10;i++) a[i]=i; for(int i=1 ; i<=3;i++) p[i]=a[i*i]; for(int i= 1 ;i<=3;i++) k=k+p[i]*2; System.out.println(k); }}

A.37

B.31

C.33

D.35


正确答案:C

第4题:

下列程序执行后,j的值是( )。 public class Testggg{ public static void main(String args[]) { int j=1; for(int i=7;i>0;i-=2) j*=2; System.out.println(j); } }

A.15

B.1

C.32

D.16


正确答案:D

第5题:

下面程序的输出结果是 public class Test{ public static void main(String[] args){ int[]array={2,4,6,8,10}; int size=6; int result=-1: try{ for(int i=0;i<size&&result==-1;i++) if(array[i]==20)result=i; }catch(ArithmeticException e){ System.out.println("Catch---1"); }catch(ArrayIndexOutOfBoundsException e){ System.out.println("Catch---2"); }catch(Exception e){ System.out.println("Catch---3"); } } }

A.Catch---1

B.Catch一--2

C.Catch---3

D.以下都不对


正确答案:B
解析:ArithmeticException是当出现异常的运算条件时,抛出此异常。例如,一个整数“除以零”时,是抛出此类的一个实例;ArrayIndexOutOfBoundsException是用非法索引访问数组时抛出的异常。如果索引为负或大于等于数组大小,则该索引为非法索引。本程序中,数组大小为5个元素,数组下标为0~4,而循环为0~5,数组越界,所以会捕获ArrayIndexOutOfBoundsException。

第6题:

下列选项中哪一个编译不出现错误 ( )

A.int i=0; if(i){ System.out.println("Hi"); }

B.int il=5; int i2=5; if(i1=i2){ System.out.println("So true"); }

C.int i=1; int j=2; if(i==1||j==2) System.out.println("OK");

D.int i=1; int j=2; if (i==1 &&|j==2) System.out.println("OK");


正确答案:C
解析:该题考查的是if语句。if语句的格式为:if布尔表达式)语句1;else语句2;选项A、B和D中的条件判断都不是布尔表达式,所以编译会出现错误。选项C中的判断是布尔表达式,所以编译时不出现错误。

第7题:

下列程序段运行的结果为 public class Test{ static void print(String s,int i){ System.out.println("String:"+s+",int:"+i); } static void print(int i, String s){ System.out.println("int:"+i+",String:"+s); } public static void main(String [] args){ print(99,"Int first"); } }

A.String:Stringfirst,int:11

B.int:11,String:Int first

C.String:String first,int:99

D.int:99,String:int first


正确答案:D
解析:本题考查考生阅读程序的能力。JavaApplication都是以main()方法作为入口,首先执行的是print(99,“Intfirst”),根据构造方法的参数类型选择调用方法,这里调用的是print(inti,Strings)方法,因此输出的是int:99,String:Intfirst。

第8题:

下列程序段运行的结果为 public class Test{ static void print(String s,int i){ System.out.println("String:"+s+",int:"+i); } static void print(int i,String s){ System.out.println("int:"+i+",String:"+s); } public static void main(String[]args){ print(99,"Int first"); } }

A.String:String first,int:11

B.int:11,String:Int first

C.String:String first,int99

D.int:99,String:Int first


正确答案:D
解析:本题考查考生阅读程序的能力。JavaApplication都是以main()方法作为入口,首先执行的是print(99,"Int first"),根据构造方法的参数类型选择调用方法,这里调用的是print(int i,String s)方法,因此输出的是int:99,String:Int first。

第9题:

下面程序执行后,baz的值应是______。 public class Test9 { public static void main(String[] args) { int index = 1; int fox[] = new int [3]; iht bar = fox [index]; int baz = bar + index; System.out.println(baz); } }

A.0

B.1

C.2

D.编译错误


正确答案:B
解析:int fox[]=new int[3]这时数组的每个元素都初始化为0,所以int baz=bar+index;,其实,这时bar的值为0,这样便有baz的值为1。

第10题:

下列程序执行后的结果是______。

public class ex24

{

public static void main(String[] args)

{

int j=10;

a1: for(int i=3;i>0;i--)

{

j-=i;

int m=l;

a2: while (m<j)

{

if (i<=m)

continue a1;

j/=m++;

}

}

System.out.println(j);

}

}

下列嵌套的循环程序执行后,结果是______。 public class ax25 { public static void main(String[] args) { int sum=0; for(int i=0;i<=5;i++) { for(int j=10;j>3*i;j--) { sum+=j*i; } } System.out.println(sum); } }

A.136

B.127

C.147

D.153


正确答案:C

更多相关问题