恒生电子一面

恒生一面

今天周日,把这一周的面试给总结一下,把面试中问到的问题写出来,并总结答案,为自己以后面试增长经验。

面试问题

  1. 自我介绍
  2. 从哪里看到的恒生
  3. 还有课吗
  4. 面向对象和面向过程的含义以及区别(概念题背不会,自己知道使用上的不同与基于函数和基于类的,但是完整的背概念做不到)

对于面向过程思想,强调的是过程(动作)。
面向对象:对于面向对象思想,强调的是对象(实体)。
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。
面向过程
优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。
缺点:没有面向对象易维护、易复用、易扩展
面向对象
优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护
缺点:性能比面向过程低

  1. Java的基本类型(8种,还分别说了字节数,面试时候说了boolean是1字节,但是实际上要看虚拟机)

字符:char 1字符2字节
整数:byte 1字节 short 2字节 int 4字节 long 8字节
浮点:float 4字节 double 8字节
布尔:boolean 1or4字节(看虚拟机)

  1. 原码,补码,反码是什么样的概念,比如什么是反码,什么是补码()(组原题,我不会概念,把计算方法说了出来,结果现在一查发现我说的计算方法是负数的…我没提正数;另外网上搜的概念也感觉跟计算方法一样,没有真正的概念)

原码:一个数的二进制机器码表示。最高位为符号位,1为负,0为正;其余为绝对值二进制表示。
反码:正数时与原码相同;负数时符号位不变,其余各位取反
补码:正数时与原码相同;负数时为反码+1(计算机数字运算均是基于补码的)

  1. 实现多线程要怎么做(刚开始我不理解这啥意思,他说在Java编码怎么写一个多线程的程序;我说了继承Thread类或实现Runnable接口,重写run方法)

继承Thread类,重写run方法
类实现Runnable接口,重写run方法(比第一种好,因为这样还可以去继承别的类)
实现Callable接口,通过FutureTask包装器来创建Thread线程(这个以前上课从来没讲过,自己也没看,Callable是Runnable的增强版)
在这里插入图片描述
使用ExecutorService、Callable、Future实现有返回结果的现成(这个网上有的博客没写)
在这里插入图片描述

  1. 说一下在学校里有参与过什么项目,扮演什么样的角色(说了自己的一个项目,但是那个是数据可视化+后端,并且数据可视化Echarts用的多一些)
  2. 他问在里面是一个开发者,参与者是吗(我还说了自己也参与了需求的指定)
  3. 双十一的秒杀系统设计,你会从哪些方面考虑(自己说了几个名词,负载均衡、高并发。到这里我已经看到他想笑了…)

秒杀通常有如下的特点:
瞬间并发量大:大量用户会同一时间抢购,网站流量激增,网络带宽也会增加
库存少:访问数量远大于库存数量
业务流程简单:流程短,立即购买->下单->减库存
对现有业务的冲击:如果和其他活动应用部署在同一服务器上,会对其他活动造成冲击

  1. 怎么处理呢(不会)

和其他应用分开部署
限流
削峰
异步处理
内存缓存
具体的这里说不完,自己想系统地看完再说

  1. 如果现在设计参与一个系统,有个管理员模块、有个权限模块(用来设置菜单按钮什么的),会设计几张表(我画了下说5张,管理员表、菜单按钮表、权限(角色)表、管理员权限映射表(这里我本来说的是多对一,因为我以为是管理员和整个系统的权限是多对一;但是他说是多对多,是指对每个菜单或按钮的权限)、菜单按钮映射表)
  2. 角色和按钮是什么对应关系(我说多对多,他一直嗯)
  3. 您认为您是有恒心有毅力的人吗(是的,侧面从成绩和奖励能看,每天)
  4. 在项目中最难的一次是什么,最难熬的一次(是项目需求开始没指定清楚,反复重做的时候…)
  5. 有没操作过Linux,说五个常用命令(ls、cat、more、less、rm、ps等)
  6. 加入到公司为公司带来什么,得到什么

反问环节

  1. 面试表现怎么样:是我个人评价,做好自己
  2. 有什么加强:个人思维逻辑有待加强,需要时间训练、分析。
  3. 有几次面试:还有至少一次
  4. 技术要求:没有界定,是综合评估,个人综合能力,不是考试多少分就要这样的
  5. 怎么加强逻辑:多和别人表达,多进行交流、探讨、表达观点
  6. 晋升:技术、管理、转岗做销售、运维都行

不只是基础知识,在场景题上自己也需要加强,数据库方面,java方面都要

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值