java基础选择题--10

1、Java程序的执行过程中用到一套JDK工具,其中java.exe是指        。 

A.Java文档生成器   B.Java解释器   C.Java编译器  D.Java类分解器 

2、Java语言中,下列标识符错误的是        。

A.—sys1   B.&—m   C.I   D.40name // 数字开头

3、下列语句执行后,变量a、c的值分别是        。

int x=182; 
         int a,c;  
         c=x/100;          
         a=x%10;    
   A) 1,2     B) 2,1    C)  1.82, 2    D)  100,82 

int a,c; - 这里定义了两个整型变量a和c。
c=x/100; - 这里将x除以100的结果赋值给c。因为x是182,所以x/100的结果是1(整数除法会丢弃小数部分)。
a=x%10; - 这里将x除以10的余数赋值给a。因为x是182,所以x%10的结果是2

4、应用程序的main方法中有以下语句,则输出的结果是        。

       String s1="0.5",s2="12";
       double x=Double.parseDouble(s1);
        int    y=Integer.parseInt(s2);
     System.out.println(x+y);
    A) 12.5      B) 120.5      C) 12      D) “12.5”  

5、下列程序段执行后的结果是        。 

String  s=new String("abcdefg");
for(int i=0;i<s.length();i+=2){
    System.out.print(s.charAt(i)); 
A) aceg    B) ACEG    C) abcdefg    D) abcd    

6、Java编程所必须的默认引用包为        。 
A.java.sys包  B.java.lang包    C.java.new包   D.以上都不是 

7、执行下列代码后,        结论是正确的String[] s=new String[10]; 
A.s[10]为″″  B.s[9]为null  C.s[0]为未定义   D.s.length为101 

8、定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为        。
    A.private class MyClass extends Object 
    B.class MyClass extends Object 
    C.public class MyClass 
    D.private class MyClass extends Object 

9、JAVA程序经常用到“递归”,“递归”的基本思想是        。 
A.“让别人反复调用自己”        B.“自己反复调用别人” 
C.“自己反复调用自己”         D.以上说法都不对

10、Java中访问限定符不包括        。
A.public     B.private     C.default    D.final 

11、Applet类的直接父类是        。
A.Component类   B.Container类   C.Frame类   D.Panel类

12、Frame的默认的布局管理器是下列哪一个        。
A.FlowLayou    B.BorderLayout    C.GridLayout D.CardLayout 

13、在下列事件处理机制中        不是机制中的角色。 
A.事件   B.事件源   C.事件接口   D.事件处理者

14、、下面属于Java线程同步方法的方法有( )         。
A.joiny()   B.run()     C.wait()   D.destroy() 

15、下列说法不正确的是        。 
A.IOException必须被捕获或抛出 
B.java语言会自动初始化变量的值 
C.java语言不允许同时继承一个类并实现一个接口 
D.java语言会自动回收内存中的垃圾

多选题

16、下面的说法正确的是        。

A.Java 语言是面向对象的、解释执行的网络编程语言。

B.Java 语言具有可移植性,是与平台无关的编程语言。

C.Java 语言可对内存垃圾自动收集。

D.Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。

17、.定义变量如下:????
     char  c='w';  int   i=8;  long  L=15;  float   f=8.9f;
    以下赋值语句正确的是        。
    A) i=c+i;     B) c=c+i;    C) L=f+L;    D) f=i+L+f; 

A) i=c+i;
这里,c 是 char 类型,其值被提升为 int(因为 int 可以容纳 char 的所有值,并且这是整数提升的标准规则)。因此,c+i 的结果是 int 类型,可以直接赋值给 int 类型的变量 i。所以,这个选项是正确的。

B) c=c+i;
这里,虽然 c 和 i 的和是 int 类型,但结果不能直接赋值给 char 类型的变量 c。

C) L=f+L;
这里,f 是 float 类型,而 L 是 long 类型。在大多数现代编译器中,float 和 long 之间的算术运算会导致结果提升为 double 类型(因为 double 有足够的精度来表示这两种类型的值)。因此,f+L 的结果是 double 类型,不能直接赋值给 long 类型的变量 L。虽然可以显式地将 double 转换为 long(这可能会导致精度损失),但在这个语句中没有这样的转换,所以这是不正确的。

D) f=i+L+f;
这里,i 和 L 会首先被提升为 double 类型(因为 double 可以容纳 int 和 long 的所有值,并且有足够的精度来表示它们的和),然后与 f(也是 float 类型,但会被提升为 double)相加。结果是 double 类型,不能直接赋值给 float 类型的变量 f。虽然可以显式地将 double 转换为 float(这可能会导致精度损失)??????

18、.面向对象程序设计的基本特征是        。
A)抽象      B)封装       C)继承      D)多态  

19. 编译并运行下面的程序,运行结果为        。
public class T1 { 
 public static void main (String[] args){
     T1 a=new T1();
     a.method(8);
     a.method(1.2f);  
 }
 void method(float i) {
    System.out.println("float: "+i);
 }
    void method(long i) {
     System.out.println("long: "+i); }
A)程序有编译错误,因为两个method()方法必须定义为静态(static)的。
B)程序可以编译运行,输出结果为:  long: 8     float: 1.2
C)程序可以编译运行,输出结果为:  float: 1.2   long: 8
D) 程序中定义的两个参数不同的method方法称为方法重栽。  

20、下面是在命令行运行Java应用程序A,怎样才能在main(String args[])方法中访问单词"first"        。
java  A  the first snow , the first snow came.
A)args[0]     B)args[1]     C)args[2]      D)args[5]  

在Java中,当你从命令行运行一个程序并传递参数时,这些参数会以字符串数组的形式传递给 main(String[] args) 方法。数组中的每个元素都是一个独立的参数,它们由空格分隔。


参数将如下分配:

args[0] 是 "the"
args[1] 是 "first"
args[2] 是 "snow"
args[3] 是 ","
args[4] 是 "the"
args[5] 是 "first"
后续的参数(如果存在)将继续以这种方式分配

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值