java面试题

java面试

基础篇

1、2<<3的结果为?

2的二进制为:0010
左移3位等到:0001 0000
转化为10进制为:16
答案:16

2、以下结果为?

		String a=new String("ABC");
        String b=new String("ABC");
        System.out.println(a==b);
        答案:false
        ==比较的是两边的地址值,a和b都是通过new String的
        方法来分配字符串,两个new是不同的地址。

如果是以下代码,

		String a="ABC";
        String b="ABC";
        System.out.println(a==b);
        因为两个"ABC"在方法区里的地址是相同的。
答案为:true

3、以下的结果为(判断=与==的区别)?

 		int x=5;
        boolean v1=true;
        boolean v2=false;
        if((x==4)&&!v1)
        System.out.println("1");
        System.out.println("2");
        if(v2=true&&v1)
        System.out.println("3"); 
        
答案为:2 3

4、以下的结果为(继承关系)?

static  class One{
        public  One(){
            System.out.println("1");
        }
    }
    static  class Two extends One{
        public Two() {
            super();
            System.out.println("2");
        }
    }
    static class Three extends Two{
        public Three() {
            System.out.println("3");
        }
    }
    public static void main(String[] args){
 		 new Three();
 	 }
 	 答案:1 2 3

5、以下结果为(list的存取顺序)?

 List a=new ArrayList();
        a.add("A");
        a.add("C");
        a.add("B");
        for (Object s:a) {
            System.out.println(s);
        }
list是有序,可重复的。
list按存储顺序取数据,
存入1,2,3
取出1,2,3
答案:A C B

6、以下结果为(多态)?

static  class TypeCarA{
        int speed(){
            return 0;
        }
    }
    static  class TypeCarB extends TypeCarA{
        int speed(){
            return 60;
        }
    }
    static class Car extends TypeCarB{
        int speed(){
            return 120;
        }
    }
    public static void main(String[] args){
        Car car=new Car();
        TypeCarB TypeCarB=new Car();
        TypeCarA TypeCarA=new Car();
        System.out.println(car.speed()+","+TypeCarA.speed()+","+TypeCarB.speed());
    }
    new哪个类,就用哪个类的方法。
    答案:120,120,120

7、什么是java跨平台,怎么理解?

跨平台指java在计算机上的运行不受平台的约束,一次编译,到处运行。
java文件(.java)通过编译器转换为字节码文件(.class),再把字节码文件通过jvm转换成机器码,即可在平台上运行。
不同平台系统上安装不同的jvm。

8、jdk和jre的区别

jre是java 运行环境(Java Runtime Environment)
jdk是java开发工具包(Java Development Kit),包括java运行环境和java工具。
有jre可以运行java文件,但不能开发
有jdk不仅可以运行还可以开发java程序。

©️2020 CSDN 皮肤主题: 深蓝海洋 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值