有趣的面试题

面试题一:

public class Test01 {
  static{
    System.out.println("static A");
  } 

  public Test01(){
    System.out.println("constract A");
  }
  {
    System.out.println("this is A");
  }

}

public class Test02 extends Test01{

  public Test02() {
    System.out.println("Test02");
  }
  {
    System.out.println("The Test02");
  }

  static{
    System.out.println("static Test02");
  }
  public static void main(String[] args) {
    new Test02();
  }
}

输出:  

  static Test02
  The Test02
  Test02

区块四种:

  1.

  {

    //构造代码块,优于构造方法先执行

    //创建对象的时候回执行一次,优于构造方法执行

  }

  2.

   public void test(){

     //方法区块 

    }

      3.

    static{

      //静态代码块,会先执行一次,在构造方法之前

      //表示类加载到内存会执行一次,可以使用Class.forName("Test");测试

    }

  4.

    class Demo{

      //类区块

    }  

  注意:所有的在区块中定义的变量不能再,在方块中外使用

      内存地址只能赋值一次

来自杭州某斗

    

  String str1="a";
  String str2="b";
  String str3="ab";
  String str4=str1+str2;
  String str5="a"+"b";
  String str6=new String("a")+new String("b");
  System.out.println(str3==str4);
  System.out.println(str3==str5);
  System.out.println(str4==str5);
  System.out.println(str3==str6);
  System.out.println(str4==str6);

  String str7=str6.intern();
  System.out.println(str3==str7);

 输出的结果是怎样的?

 

  dubbo缓存是怎样的?

  有缓存

  

  activemq持久化是如何实现的?

    自带默认的啊!没研究过

count(id)与count(*)的区别,=1与=‘1’的区别隐式转换

 

原文地址:https://www.cnblogs.com/chaojibaidu/p/10567440.html