栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

9.26-bbt面试复盘

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

9.26-bbt面试复盘

第一轮:笔试

16道选择题+2道编程题+1道sql大题+列举6个常用注解并说明用处+列举十条java编程规范

  • 选择题全是java程序执行结果题,问你程序最终是否能通过编译,或者最终输出结果(这里我错了贼多题,依稀记得“以下哪些是java隐式声明” + 和String相关的编程输出题错得比较多)
  • 编程题的话,一道是关于多线程的,用10个线程分别打印A~J10个字母,输出不要求顺序;另一道是手写单列模式(我只写了伪代码,大概是用CopyOnWriteArrayList存放字母,然后起线程池for循环倒序打印,每打印完一个字母就将其从列表移除;单例居然没写出来啊啊啊啊啊)
  • sql就是很常见的sql练习,没写完,写sql没啥手感,一共三题,最后一题直接写了思路

第二轮:面试
介绍一下自己的项目:
1.面试官其中有问项目并发性是否要求很高,我主要做基于第三方的交易,回答了并发并没有要求很高,因为我们的场景是读多写少。面试官表示理解
2.面试官又问了K线数据这种实时信息是怎么做到的,我回答这不是我的业务。。
3.我介绍了项目架构由于第三方的服务升级,我们的协议从长连接改成了http调用,并且介绍了架构演变。顺便把CountDownLatch给举例说了一嘴

基础提问:
1.讲一下“字符串常量池”,我直接给他上手画图
2.问我是否了解索引是一笔很大的开销,我说听说过,但是不是很了解。然后面试官就转方向问了:假设现在有字段name,年月日、性别,他们的查询频率都差不多,问我这三个是否都可以创建索引。答曰除了“性别”外,其他都可以搞索引,因为其他字段是比较有差异性的字段,可以很快地根据这些条件识别出一些记录
3.问我VO和DTO的区别,and是否知道VO和DTO这几个单词全称是啥。啊我蒙了
4.在笔试题的java编程规范那里,我写了一个“代码修改之前要先看它的引用”,面试官问了我具体啥意思。我回答,假设出现了一种场景,使得原方法不满足我的场景了,我准备改掉它。那么改这个方法之前应该看看它的其他调用者的使用场景,判断一下我改完之后会不会干扰他们的使用。。
面试官跟我讲这个方法要保持单一职责,碰到这种情况,抽一个接口,另外实现这个场景方法更好。

大概写了一下多线程题的实现,不知道是否正确

package com.ling.ddd.aboutCollection;

import java.util.concurrent.CopyOnWriteArrayList;

public class TestPrint {

    static class Task implements Runnable {

        private String i;
        public Task(String i) {this.i = i;}
        @Override
        public void run() {
            System.out.println(this.i);
        }
    }

    public static void main(String[] args) {

        CopyOnWriteArrayList list = new CopyOnWriteArrayList<>();
        list.add("A");
        list.add("B");
        list.add("C");
        list.add("D");

        for (int j=list.size(); j>=1; j--) {
            new Thread(new Task((String) list.get(j-1))).start();
        }

    }
}

 

程序判断题有提到接口成员变量的缺省属性:
Java接口成员变量和方法默认修饰符(缺省属性)

接口改错题:

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号