• JAVA入门到精通-第52讲-面试题讲评


    赛迪网Java程序员笔试题

    第一大题:选择题(20个小题,要求和分值按每题后面的提示,共60)

    1、下面哪些是java语言中的关键字?  B

    Asizeof

    Babstract

    CNULL

    DNative

     

    2、第一个java语言编译器是在()年推出。  D

    A1991

    B1992

    C2001

    D1996

     

    3、以下()JAVA的保留字    C

    AJava

    BHello

    Cclass

    DClass

     

    4、下面程序运行之后,变量x的值是() B

    //swap方法的声明

    public static void swap(int a,int b){

        int t=a;

        a=b;

        b=t;

    }

    //main方法

    public static void main(String args[]){ A

        int x=2;

        int y=3;

        swap(x,y);//简单数据类型是不会交换,如果是对象会发生变化

    }

    A2    B3    C4    D6

     

    5、下面变量var的作用域范围是() C

    //....

    int x;

    swhitch(x){

        case 0:

        {

            int var;

            //process

        }

            break;

        case 1:

        {

            int var1;

            //process

        }

            break;

    }

    A116行之间 B48行之间  C68行之间  D614行之间

     

    6、以下的类(接口)定义中正确的是()   B

    A

    public class a{

        private int x;

        public getX(){

            return x;

        }

    }

    B

    public abstract class a{

        private int x;

        public abstract int getX();

        public int aMethod(){

            return 0;

        }

    }

    C

    public class a{

        private int x;

        public abstract int getX();

    }

    //如果是抽象函数类必须声明为抽象

    D

    public interface interfaceA{

        private int x;

        public int getX(){

            return x;

        }

    }

    //接口都是抽象的,所有的方法都不能够被实现


    7、已知A类被打包在packageA,B类被打包在packageB,B类被声明为public,且有一个成员变量x被声明为protected控制方式。C类也位于packageA包,且继承了B类。则以下说法正确的是()  C

    AA类的实例不能访问到B类的实例

    BA类的实例能够访问到B类一个实例的x成员

    CC类的实例可以访问到B类一个实例的x成员

    DC类的实例不能访问到B类的实例



    8、以下()类不属于字符流类   C

    AReader   BFileReader   CBufferedInputStream  DStringReader

    //BufferedInputStream字节流


    9、以下()类属于字节流类 D

    AFileWriter

    BPushbackReader

    CFilterReader

    DFileInputStream

    //Writer/Reader基本是字符流


    10、编译并运行下面的java代码段:

    char c='a';

    switch(c){

    case 'a':

        System.out.println("a");

    default:

        System.out.println("default");

    }

    输出结果是()  B

    A、代码无法编译,因为switch语句没有一个合法的表达式

    Ba Default

    Ca

    Ddefault

    char/int/byte/枚举

    都可以匹配switch();


    11、分析下面的java程序

    public class yy{

        public static void main(String[] args)throws Exception{

            try{

                throw new Exception();

            }catch(Exception e){

                System.out.println("Caught in main()");

            }

            System.out.println("nothing");

        }

    }

    输出结果为()    A

    ACaught in main() Nothing

    BCaught in main()

    Cnothing

    D、没有任何输出

    //发生异常,捕获;


    12、在Java中,关于final关键字的说法正确的是()AC

    A、如果修饰变量,则一旦赋了值,就等同一个常量

    B、如果修饰类,则该类只能被一个子类继承

    C、如果修饰方法,则该方法不能在子类中被覆盖

    D、如果修饰方法,则该方法所在的类不能被继承

    //如果一个类被final修饰,则该类不能被继承

    13、在java中,要想使只有定义该类所在的包内的类可以访问该类,应该用()关键字。A

    A、不需要任何关键字

    Bprivate

    Cfinal

    Dprotected 保护的

     

    14、在java中,下面关于包的陈述中正确的是() AD

    A、包的声明必须是源文件的第一句代码

    B、包的声明必须紧跟在import语句的后面

    C、只有公共类才能放在包中

    D、可以将多个源文件中的类放在同一个包中

     

    15public static void main方法的参数描述是正确的()AB

    AString args[]

    BString[] args

    CStrings args[]

    DString args

     

    16、在java中,关于CLASSPATH环境变量的说法不正确的是() A

    ACLASSPATH一旦设置之后不可修改,但可以将目录到该环境变量中

    B、编译器用它来搜索各自的类文件

    CCLASSPATH是一个目录列表

    D、解释器用它来搜索各自的类文件

     

    17、编译并运行下面的java程序

    class A{

        int var1=1;

        int var2;

        public static void main(String[] args){

            int var3=3;

            A a=new A();

            System.out.println(a.var1+a.var2+var3);

        }

    }

    将产生()结果    B

    A0

    B4

    C3

    D、代码无法编译,因为var2根本没有被初始化

     

    18、在单一文件中importclasspackage的正确出现顺序是()  A

    Apackage,import,class

    Bclass,import,package

    Cimport,package,class

    Dpackage,class,import

     

    19、编译,运行下列代码后的结果是()  D//类的成员变量可以不赋初值,局部变量要赋初值

    public class Test{

        public static void main(String args[]){

            int age;

            age=age+1;

            System.out.println("The age is"+age);

        }

    }

    A、编译,运行后没有输出

    B、编译,运行后输出:The age is1

    C、能通过编译,但运行时产生错误

    D、不能通过编译


    20、下列哪些表达式返回true()    AB

    A"john"=="john"

    B"john".equals("john")

    C"john"="john"

    D"john".equals(new Button("john"))

     

    第二大题:

    1、用循环控制语句打印输出:1+3+5+...+99=?结果

    答题:

    x
     
    1
    int sum=0;
    2
    for(int i=1;i<100;i+=2){
    3
        sum+=i;
    4
        System.out.println("i="+i+"sum="+sum);
    5
    }

    结果:2500

     

    2、请编写一个程序,实现从控制台读入字符,接收到"e"或者"E"退出程序

    答题:

    1
    21
     
    1
    import java.io.BufferedReader;
    2
    import java.io.InputStreamReader;
    3
    public class Test {
    4
        public static void main(String[] args) {
    5
            InputStreamReader isr=new InputStreamReader(System.in);
    6
            BufferedReader br=new BufferedReader(isr);
    7
            while(true){
    8
                System.out.println("请输入任意字符(输入e或E退出):");
    9
                try {
    10
                    String chars=br.readLine();
    11
                    if(chars.equals("e")||chars.equals("E")){
    12
                        System.out.println("输入的字符是e或是E,退出");
    13
                        System.exit(0);
    14
                    }
    15
                } catch (Exception e) {
    16
                    e.printStackTrace();
    17
                }
    18
               
    19
            }
    20
        }
    21
    }

    3、编写两个方法分别计算合数n!.一个使用递归方法实现,另一个不用递归方法。

    答题:(非递归方法)

     
    1
    import java.io.BufferedReader;
    2
    import java.io.InputStreamReader;
    3
    public class test {
    4
        public static void main(String[] args) {
    5
            InputStreamReader isr=new InputStreamReader(System.in);
    6
            BufferedReader br=new BufferedReader(isr);
    7
            int num=1;
    8
            while(true){
    9
                System.out.println("请输入整数:");
    10
                try {
    11
                    int note=Integer.parseInt(br.readLine());
    12
                    if((note%1==0&&note%2==0)||(note%1==0&&note%3==0)||(note%1==0&&note%5==0)||(note%1==0&&note%7==0)){
    13
                        System.out.println("你输入整数"+note+"是合数!");
    14
                        for(int i=1;i<=note;i++){
    15
                            num=num*i;
    16
                        }
    17
                        System.out.println(note+"的阶乘结果是:"+num);
    18
                        num=1;
    19
                    }else{
    20
                        System.out.println(note+"不是合数");
    21
                    }
    22
                    if(note==-1){  
    23
                        System.out.println("退出");
    24
                        break;
    25
                    }
    26
                } catch (Exception e) {
    27
                    e.printStackTrace();
    28
                }
    29
            }
    30
        }
    31
    }

    ------------------------------------------------------------------------------

    答题:(递归方法)

    1
    32
     
    1
    import java.io.*;
    2
    public class Test {
    3
        public static void main(String[] args) {
    4
            InputStreamReader isr=new InputStreamReader(System.in);
    5
            BufferedReader br=new BufferedReader(isr);
    6
            while(true){
    7
                System.out.println("请输入一个整数:");
    8
                try {
    9
                    int note=Integer.parseInt(br.readLine());
    10
                    if((note%1==0&&note%2==0)||(note%1==0&&note%3==0)||(note%1==0&&note%5==0)||(note%1==0&&note%7==0)){
    11
                        System.out.println("你输入整数"+note+"是合数!");
    12
                    }
    13
                    Test t = new Test();
    14
                    int n = t.calc(note);
    15
                    System.out.println(note+"阶乘结果是:"+n);
    16
                    if(note==0){
    17
                        System.out.println("输入0退出");
    18
                        break;
    19
                    }
    20
                } catch (Exception e) {
    21
                    e.printStackTrace();
    22
                }
    23
            }
    24
        }
    25
        public int calc(int n) {
    26
            if(n==0){
    27
                return 1;
    28
            }
    29
            return n*calc(n-1);
    30
        }
    31
    }
    32
     

    4、编写一个程序,在控制台接收数据,程序会让用户输入名字,并检查用户的输入:不允许输入空名字:一旦用户完成输入,程序会向该用户发出问题:“Hello,你输入的名字”。(提示:如果希望在控制台中与用户交互,一种可能的做法就是将System.in包装成)BufferedReader要做到这一点,必须使用InputStreamReader类将System.in这个InputStream对象转换成一个ReaderBufferedReader in=new BufferedReader(new InputStreamReader(System.in));

    答题:

    24
     
    1
    import java.io.BufferedReader;
    2
    import java.io.InputStreamReader;
    3
    public class Test {
    4
        public static void main(String[] args) {
    5
            InputStreamReader isr=new InputStreamReader(System.in);
    6
            BufferedReader br=new BufferedReader(isr);
    7
     
    8
            while(true){
    9
                System.out.println("请输入名字:");
    10
                try {
    11
                    String name=br.readLine();
    12
                    if(name.equals("")){
    13
                        System.out.println("你输入的名字是空,退出!");
    14
                        System.exit(0);
    15
                    }else{
    16
                        System.out.println("Hello,"+name+"!");
    17
                    }
    18
                } catch (Exception e) {
    19
                    e.printStackTrace();
    20
                }
    21
            }
    22
        }
    23
    }
    24





  • 相关阅读:
    iOS “请在微信客户端打开链接” UIWebview加载H5页面携带session、cookie、User-Agent信息 设置cookie、清除cookie、设置User-Agent
    iOS AR技术初体验,使用EasyAR示例程序的小白指南
    导入GPUImage,实时滤镜相机,GUPImage遇到的问题解决,_OBJC_METACLASS_$_GBGPUImageView in GBGPUImageView.o
    iOS 除去图片的白色背景(接近白色),或者其它颜色的替换,获取像素点的ARGB值
    用const取代宏定义更好的管理内存
    一些字体设计的练习
    Appium 解决锁屏截屏问题(java篇)
    解决Appium无元素可选的如何定位(java篇)
    解决Appium 抓取toast(java篇)
    Appium 解决手势密码 (java篇)
  • 原文地址:https://www.cnblogs.com/xuxaut-558/p/10045793.html
Copyright © 2020-2023  润新知