Skip to content

Latest commit

 

History

History
102 lines (97 loc) · 11 KB

Java基础.md

File metadata and controls

102 lines (97 loc) · 11 KB

Java基础

基本类型、关键字(final static)、接口和抽象类、反射、注解、泛型

  1. Java1.5版本后的三大版本
  2. Oracle JDK 和 OpenJDK 的对比
  3. Java语言有什么特点
  4. 什么是字节码?采用字节码的最大好处是什么
  5. 什么是Java程序的主类?应用程序和小程序的主类有何不同?
  6. long类型和double类型的线程安全问题:因为目前jvm的原子操作是32位
  7. java 8大基本类型
  8. 为什么需要包装类型 ? 面向对象 泛型
  9. 什么是装箱 拆箱
  10. Math.round(11.5) 等于多少?Math.round(-11.5)等于多少
  11. new Integer(123) 与 Integer.valueOf(123) 的区别?
  12. Integer 缓冲池范围? 是否可以修改? -XX:AutoBoxCacheMax=<size>
  13. String 是否可以继承? final
  14. 枚举是否可以继承? 枚举中是否可以实现方法?
  15. String在jdk8中的实现和在jdk9中的实现?
  16. String 如何保证不可变? final 不可变有什么好处?
  17. 字符串常量池常见的问题
  18. 常量池使用了什么设计模式? 享元模式
  19. String、StringBuffer、StringBuilder 的区别?
  20. 什么是String pool?
  21. 如何在运行时将字符串添加到String pool? intern()
  22. String#equals() 和 Object#equals() 有何区别?
  23. String pool 存放在哪里? 永久代 堆
  24. String是否会导致OOM? 会 常量池在堆中!
  25. float f=3.4 是否正确?;
  26. 参数传递是指传递还是引用传递?为什么 Java 中只有值传递?
  27. 使用 += 或者 ++ 运算符会执行隐式类型转换
  28. switch 不支持哪些类型? Long float double
  29. 什么是switch击穿现象?
  30. final 用法 字段 方法 类
  31. 方法重写和方法重载?
  32. 静态变量和实例变量的区别? 范围 生命周期
  33. Object 类的常见方法有哪些?
  34. 静态方法是否可以是抽象的? 不能 结合类加载
  35. 静态初始化块 构造器 子类父类 初始化顺序?
  36. 静态内部类 : 非静态内部类依赖外部类,需要先创建外部类
  37. 静态内部类不能访问外部类的非静态的变量和方法? 是的
  38. equals 方法比较的是什么?
  39. 为什么重写equals方法一定要重写hashcode方法? 保证hashcode一致
  40. toString 方法 打印@后面的是什么? hashcode的无符号16进制
  41. clone方法的访问控制权限是什么? protected native
  42. 深拷贝和浅拷贝?
  43. 访问控制符以及权限范围 : 如果不加访问修饰符,表示包级可见。
  44. java的抽象方法为什么不能是static、final、private?
  45. 抽象类(abstract class)和接口(Interface)的区别
  46. 抽象类只能被继承不能实例化? 是的
  47. 抽象类是否可以继承抽象类?可以
  48. 抽象类是否可以实现接口?可以
  49. 抽象类是否可以继承非抽象类? 可以
  50. 接口是否可以实现接口? 不可以
  51. 接口是否可以继承接口? 可以
  52. 接口可以定义private的变量和方法吗? 可以
  53. 接口方法可以有自己的实现吗? 可以 default
  54. 接口可以继承抽象类? 普通类? 都不可以
  55. 接口是否可以定义变量? 不可以 只能是常量
  56. 内部类可以引用它的包含类的成员吗?有没有什么限制?
  57. Java反射机制
  58. 反射的优缺点?
  59. 什么是异常?什么是错误?
  60. 受查异常和非受查异常? IOException NullPointException
  61. Throwable 类常用方法有哪些?
  62. try-catch-finally 如何使用?
  63. finally 中的代码一定会执行吗?
  64. 如何使用 try-with-resources 代替try-catch-finally?
  65. Java异常机制的意义? 中断程序
  66. 泛型的10道面试题
  67. Java中的泛型是什么 ? 使用泛型的好处是什么?
  68. Java的泛型是如何工作的?
  69. 什么是类型擦除 ?
  70. 什么是泛型中的限定通配符和非限定通配符? extends super <?>
  71. List<? extends T>List <? super T>之间有什么区别?
  72. 如何声明泛型和使用泛型?
  73. 你可以把 List<String> 传递给一个接受List<Object>参数的方法吗? 编译错误
  74. Array中可以用泛型吗? 不支持
  75. 泛型详解
  76. 泛型方法 泛型接口 泛型类 ?
  77. 你的项目中哪里用到了泛型?
  78. 注解的实现原理 链接1
  79. 注解是如何进行解析的?
  80. Java 中如何实现序列化,有什么意义?
  81. 阐述 JDBC 操作数据库的步骤
  82. Statement 和 PreparedStatement 有什么区别?哪个性能更好?
  83. 在进行数据库编程时,连接池有什么作用?
  84. 什么是 DAO 模式?
  85. Java 中是如何支持正则表达式操作的?
  86. Java位运算
  87. 什么是代理模式,代理模式的目的是什么?
  88. JDK 动态代理机制
  89. CGLIB 动态代理机制
  90. BigDecimal解决浮点数运算精度丢失问题
  91. 为什么浮点数 float 或 double 运算的时候会有精度丢失的风险呢?
  92. 两个double类型的变量如何判断相等呢? 为什么不能使用 ==
  93. 哈希冲突的解决办法有哪些? 分别用在哪些场景 开放寻址|探测

以上参考文档链接 🔗 Java程序员要达到什么水平才能社招进阿里