java面试题
java基础
JDK 和 JRE 有什么区别
JDK包含JRE, JDK的全称是 java development kit 即java开发工具包,给开发人员用的。
JRE是java 运行环境。面向java程序的使用者。
equals()和==的区别
==是指对内存地址进行比较 , equals()是对字符串的内容进行比较
public static void main(String[] args) {
String b = new String("sdf");
String a = new String("sdf");
System.out.println(a == b);
System.out.println(a.equals(b));
}
final 在 java 中有什么作用
特征:凡是引用final关键字的地方皆不可修改!
-
修饰类:表示该类不能被继承;
-
修饰方法:表示方法不能被重写;
-
修饰变量:表示变量只能一次赋值以后值不能被修改(常量)。
抽象类和普通类区别
- 和普通类比较起来,抽象类它不可以被实例化
- 含有抽象方法的类,必须要申明为抽象类
zookeeper 是什么?
SpringCloud五大核心组件
Eureka:服务注册于发现。
Feign:基于动态代理机制,根据注解和选择的机器,拼接请求 url 地址,发起请求。
Ribbon:实现负载均衡,从一个服务的多台机器中选择一台。
Hystrix:提供线程池,不同的服务走不同的线程池,实现了不同服务调用的隔离,避免了服务雪崩的问题。
Zuul:网关管理,由 Zuul 网关转发请求给对应的服务。