zoukankan      html  css  js  c++  java
  • java实习面试题(阿里一面)

    1.抽象类和接口的不同点:

    抽象类可以有构造函数,接口中不能有构造函数;

    抽象类中可以有普通成员变量,但是接口中不能有普通成员变量;

    抽象类中可以包含非抽象的普通方法,但是接口中必须是抽象方法;(jdk1.8接口中可以有非抽象方法,但是必须使用default修饰)

    接口中所有修饰符必须是public,但是抽象类中没有这个要求;

    抽象类和接口中都可以有静态成员变量,但是接口中是public

    一个类可以实现多个接口,但是只能实现一个类

    2.接口中可以声明变量吗

    可以,public static final

    3.静态方法能调用非静态方法吗?为什么

    不能。静态是随着类加载而而加载的,而非静态是属于对象的,对象存在才能存在。而静态是优先于对象存在的,所以静态去调用非静态,此时非静态还不存在。

    4.Synchronizd修饰静态方法和非静态方法上有什么区别(锁)

    synchronizd修饰静态方法,锁是类.Class对象,而修饰非静态方法,锁是本类对象this

    5.错误处理机制。error和exception区别。非检查异常和检查异常的区别

    error是系统级的错误,不用程序员自己处理。exception表示需要捕获或者处理的异常,是程序设计的瑕疵或者是外在输入导致的问题,是程序必须要处理的。

    运行时异常表示让程序无法恢复的异常,可能是执行了错误的操作,建议终止程序,编译器不检查这些异常;

    受检查异常表示程序可以处理的异常,也就是程序可以修复。

    6.try-catch-finally。可不可以没有catch,finally语句会不会执行。

    可以没有catch,因为可以捕获异常但是不做处理。finally语句是会执行的,还会覆盖前面的return。

    7.内存管理机制。垃圾回收机制回收哪部分内存

    堆和方法区

    8.新生代中对象被老年代中对象引用,怎么解决。

    这题没有听明白。

    9.HashMap,hsah算法。为什么。

     

    10.hashmap底层数据结构。红黑树引进解决什么问题。什么情况下转换成红黑树。会不会再退化成链表。

    11.hashmap线程安全吗。举例子说哪种情况会出现什么问题。

     

     fail-fast

    扩容时。https://www.cnblogs.com/qiumingcheng/p/5259892.html

    12.map实现数据怎么存进去怎么取出来

    13.volatile。

    volatile修饰时,赋值时,还是会在工作内存中保存副本,只是会立即刷新,并通知其他线程,其他线程如果工作内存中有该变量的副本,那么会放弃该副本,重新从主存中获取。

    14.乐观锁和悲观锁,分布式锁。线程池。TreadLocal

    15.类加载器的模型。

    16.999模8

    999&7

    17.多数据中找出最大的k个(top k)。

    首先读入k个数,构建k个元素的最小堆,然后将剩下的元素跟堆顶元素(最小元素)作比较,如果比最小的数小,则继续读取后续元素,如果比堆顶元素大,则将该元素替换堆顶元素,并重新调整为最小堆。这样一直到最后,堆中就是最大的k个元素。

    18.Spring配置bean的方式

    xml配置:使用无参构造器创建,使用静态工厂创建,使用实例工厂创建。http://www.cnblogs.com/xiaolovewei/p/7927698.html

    注解配置

    19.怎么样在注解中配置一个bean。

    @component

    @Service

    @Controller

    @Repository

    20.引用bean,该bean有多个实例。

    @Autowired

    @Resource

    @Scope()

    21.Spring的设计模式。

    22.动态代理有几种,区别。

    23.cglib能不能代理String类。

  • 相关阅读:
    CSS行高——line-height
    非替换元素和替换元素
    7-7 jmu_python_是否是数 (10 分)
    7-8 jmu-python-从列表中删除元素 (15 分)
    7-6 jmu_python_最大公约数&最小公倍数 (10 分)
    7-5 jmu-python-分段函数1 (10 分)
    7-4 jmu-python-判断是否构成三角形 (10 分)
    7-3 jmu-python-回文数判断(5位数字) (10 分)
    7-2 jmu-python-九九乘法表(矩形) (10 分)
    7-1 jmu-python-汇率兑换 (10 分)
  • 原文地址:https://www.cnblogs.com/xiaolovewei/p/8597926.html
Copyright © 2011-2022 走看看