jon的秋招之旅9.3—9.19

本文记录了一个应届毕业生从九月初开始为期两周的秋招面试经历,涵盖了操作系统、计算机网络、数据库、Java基础知识、多线程、JVM等方面的知识点回顾及面试心得。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

9月3日

  1. 操作系统

线程进程区别,进程通信方式,死锁,常用的linux命令,作业调度方式

  1. 计算机网络

分为几层以及每一层的作用,TCP/UDP区别,拥塞控制,流量控制,多层协议,三次握手四次挥手,输入域名访问一个网站的过程,https&http

 

9月4日

  1. hashmap原理以及内部数据结构,怎么解决冲突,扩容过程//
  2. 两种单例模式,怎么解决线程安全
  3. Java内存模型
  4. 垃圾回收算法,垃圾回收器CMS和G1
  5. Java反射机制
  6. Spring IOC AOP原理
  7. 判断一个单链表是否成环(快慢指针相遇代表成环)
  8. 看大神们的面经
  9. Sql优化,索引原理,事务
  10. 常用的设计模式:

单例模式:在一个类中只有一个实例,并提供一个全局访问点

工厂模式:定义一个创建对象的接口,让子类来决定实例化哪一个类

代理模式:让其他类来代替执行一些方法(静态/动态)

JVM:

HTTP://blog.youkuaiyun.com/maydaysar/article/details/56839617

 

9月5日

  1. 刷题目
  2. 看java基础,面向对象,集合,多线程,IO,JVM

 

9月6日

  1. 今天多益网络和美团点评的笔试
  2. 刷编程题目啊啊啊啊
  3. 数学类题目:

https://blog.youkuaiyun.com/reed1991/article/details/62927634

  1. 数据库相关知识

 

9月7日

  1. 冒泡排序,选择排序,快速排序
  2. 刷秋招真题
  3. 手写链表的翻转,手写取出链表的倒数第K个元素
  4. 阿里巴巴笔试陪跑

 

 

9月8日

  1. 早上招商银行笔试陪跑
  2. 看面经
  3. 刷题
  4. 单例模式的几种写法

饿汉式:

public class Singleton{

private static Singleton instance=new Singleton();

private(){}

public static Singleton getInstance(){

return instance;

}

}

 

懒汉式:

public class Singleton{

private static Singleton instance=null;

private Singleton(){}

public static Singleton getInstance(){

if(instance==null){

 instance=new Singleton();

}

return instance;

}

}

 

9月9日

  1. 上午刷选择题
  2. 下午剑指offer
  3. 手撕二分查找 O(log2n)
  4. 晚上刷了两套美丽联合秋招试卷,感觉还行。
  5. 写项目的介绍
  • 小型购物网站

实现的功能:用户的注册登录,购物车,前台页面的搭建

用到的技术:用SQl Sever建立了两张表,用户表与订单表,用户表是以用户名为主键,(问题1)在用户注册的时候,如果表中已经存在用户名注册就会失败,在注册之前将用户名与用户表中的用户名对比,新添加一个按钮,使用ASP.NET AJAX局部刷新,在购买商品时使用session传值,在购物车页面将用户购买的商品存到订单表中。

  • 小爬虫

爬取的是静态页面,使用requests模块(获取页面的内容)和beautifulsoup模块(对页面进行解析),通过页面的标签,将所需要的信息提取出来。

 

 

9月10日

  1. 今天晚上链家网笔试,感觉还是能够应付得了的。
  2. 刷真题
  3. 看面经
  4. 编程题加上:while(sc.hasNext())!!!!!
  5. 写自我介绍

面试官您好,我叫唐彰,来自武汉科技大学,就读于网络工程专业,目前是一个应届毕业生,非常高兴来参加贵公司java开发岗位的面试。

作为一名计算机学院的学生,我喜欢那种用代码解决问题的感觉,从而热爱编程,我有较强的学习能力,有良好的编码习惯,并能够使用java,python进行编程,在学校里曾经开发过简单的购物网站,写过小型的爬虫,我的英语基础良好,能够阅读相关英语文档。我的性格比较沉稳,具有良好的沟通能力,能够快速融入新的团队。

我的个人兴趣是街舞,加入过我们学校的舞蹈协会,还在今年的斗鱼嘉年华上表演开场舞。

最后非常感谢有机会参加这次面试!!!!!!!!

 

9月11日

  1. 中午12点半,千橡网景武汉分公司宣讲会
  2. 晚上4399笔试
  3. 刷题,看面经
  4. SQL语句中between包括边界值*
  5. 长度为8-10的用户密码(以字母开头,数字,下划线)

^[a-zA-Z]\w{7,10}$

  1. 观察者模式:定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个对象,当这个对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。

 

9月12日

  1. 人人网笔试通过,等待面试
  2. 既然有面试了,那就要好好准备面试了啊
  3. 晚上上海汉得信息技术股份有限公司宣讲会
  4. 刷题
  5. 原型模式主要是用于对象的复制
  6. 实现同步的方法:

Synchronized关键字,ReentrantLock可重入锁,wait/notifyAll,ThreadLocal

*7.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;

有什么错?

对于 short s1 = 1; s1 = s1 + 1; 由于 s1+1 运算时会自动提升表达式的类型,所以结果是 int 型,再赋值给 short 类型 s1 时,编译器将报告需要强制转换类型的错误。

对于 short s1 = 1; s1 += 1;由于 += 是 java 语言规定的运算符,java 编译器会对它进行特殊处理,因此可以正确编译。

 

 

9月13日

  1. 早上9点半汉德公司面试

string,stringbuffer,stringbuilder区别;

接口和抽象类的区别;

JDBC的过程;

int和integer的区别;

get和post那个更安全?

关于mvc的基本概念;

关于反射;

静态变量和非静态变量的区别;

java中goto是保留字,没有被使用;

怎么查询具有一亿个数据的数据库?

  1. 建立索引,2.以时间对数据库的数据进行分片,查询时按照时间查询

*然后就是项目了,项目需要再熟悉熟悉。

建立数据库使用的是sql sever建立了了用户表和订单表

注册时候用到的技术:

ADO.NET中对数据库进行操作的规范步骤为:

创建一个连接对象,与数据库进行连接;sqlconnection对象

使用对象的Open方法打开连接;

创建一个封装SQL命令的对象;

调用执行命令的方法;sqlcommand指定要执行的SQL语句

执行数据库操作;ExecuteNonQuery方法执行sql语句

执行完毕,释放连接。

使用Session传值。

  1. 晚上参加深圳联奕科技公司的宣讲会,以及笔试
  2. 看java程序员面试宝典

 

9月14日

  1. 拿到联奕科技的offer(秋招第一个offer)

面试所问问题:

介绍自己;

软件工程的步骤;

二叉树的相关内容;

  1. 晚上两场宣讲会,广州华资和深圳航天信息
  2. 刷面试题,看面经
  3. 简历的话还需要再重新写一份,毕竟遇到相同版本的了。

 

9月15日

  1. 去广州华资公司面试

关于项目还是不是特别熟悉,

面向对象的四大特性:封装,继承,多态,抽象;

抽象:指找到一类事物的共性,并封装成一个抽象类;

静态方法是否能够调用非静态方法;

重载和重写的区别;

关于sql注入:就是把sql命令插入到web表单提交或者输入域名或者页面请求的查询字符串,最终让服务器执行SQL命令

防范:1.对用户的输入进行校验

2.不要使用动态拼装sql

3.不要把机密信息明文存放

 

 

9月16日

一.人人网面试(凉凉)

1.40亿个整数的内存大小

一个整数4个字节,40亿数16G字节。

4x4000000000=16000000000=16G


2.40亿个数找出前100大的数

答:a.假设数组arr保存100个数字,首先取前100个数字放入数组arr,对于第101个数字k,如果k大于arr中的最小数,则用k替换最小数,对剩下的数字都进行这种处理。

b.先把100w个数分成100份,每份1w个数。先分别找出每1w个数里面的最大的数,然后比较。找出100个最大的数中的最大的数和最小的数,取最大数的这组的第二大的数,与最小的数比较。。。。


3. servlet是否线程安全

不是线程安全的,servlet默认是单例模式,所以在web容器中只创建一个实例,所以多个线程访问servlet的时候,就是线程不安全的。


4. where和having的区别

where是一个约束声明,直接对数据库中的数据进行过滤操作,在结果返回之前起作用,不能使用聚合函数;

Having是一个过滤声明,先查询到返回的结果后再对结果进行过滤,可以使用聚合函数。

聚合函数比having子句优先执行。


5.写sql语句学生表和教师表,分数大于80的学生以及选出被选课最多的老师

select distinct s.name

from student s

Where s.name not in(select distinct s.name from score where s.score<=80)  


*6.堆排序具体过程
7.session和cookie的作用与区别(都是会话)

Cookie是保存在用户电脑上的一小段文本,用来保存用户在网站上的必要的信息,并给这些信息添加一些限制条件,浏览器在以后每次访问服务器的时候,就把请求的网址和cookie一同提交给服务器。

Session:无论访问多少个页面都属于同一会话。

总结:cookie是保存在客户的浏览器上,session数据存放在服务器上,将登录信息等重要信息存放为session,其他信息存如果需要保留,存放在cookie中。

8.http的连接有无状态,怎么解决

通过Cookie和Session保存信息。

  1. 浅拷贝与深拷贝的区别

浅拷贝仅复制所考虑的对象,而不复制它所引用的对象;

深拷贝把要复制的对象以及所引用的对象都复制。

 

10.Callable和Runnable的区别

Runnable执行方法是run(),Callable是call();

实现Runnable接口的任务线程无返回值,而实现Callable接口的有;

run方法不能抛出异常,call方法可以抛出异常,

 

http相关题目:https://blog.youkuaiyun.com/renlinyu3495/article/details/81778296

 

二.继续复习准备面试吧,面试才是最重要的啊啊啊啊

注意:面试的时候不要给自己挖坑啊啊啊啊啊

 

9月17日

  1. 什么时候使用抽象类?
  1. 让几个关联紧密的类之间共享代码;
  2. 让继承抽象类的那些类有一些公共方法或者属性

什么时候使用接口?

  1. 利用多继承的优势
  2. 让相互之间无关的类实现接口
  3. 复习sql语句

https://blog.youkuaiyun.com/xhanguomzhu/article/details/79580375

3.sql语句中between包含边界值

4.http响应和请求的过程

5.面向对象的特性:封装,继承,多态,抽象

6.几大排序一定要记下来

 

9月18日(后背岔气,舌苔厚白,身体不能倒下啊)

  1. 日海智能宣讲会,上海商泰汽车宣讲会(招聘的是软件工程师)
  2. 公平锁/非公平锁,独享锁/共享锁,可重入锁,乐观与悲观锁
  3. 网关的作用:为了连接不同的网络
  4. Linux中修改配置:vi
  5. 三次握手,四次挥手,滑动窗口
  6. Java泛型就是指变量类型的参数化,把所操作的数据类型指定为特定的参数类型。为集合提供一个可以容纳的对象类型,当添加其他类型的元素时在编译时就会报错。

意义:在编译期间对数据类型进行检查提高类型安全,减少由于对象类型不匹配引发异常。

  1. 链表中也可以使用二分查找

将链表排序,然后将链表的每个元素的地址放入数组然后再通过数组来查找数据。

  1. 刷真题

 

9月19日 感觉这几天心里好焦虑啊,不行,不能这样啊

  1. DNS域名解析

本地域名服务器(浏览器缓存,系统缓存,路由器缓存,IPS服务器缓存)根域名服务器缓存,顶级域名服务器缓存,主域名服务器缓存。

  1. 查漏补缺复习
  2. Java中对类名长度没有限制
  3. 今天面试武汉中科创达公司(外包公司)

定义一个单独的比较器,实现Comparator接口,实现compare方法;实现Comparable接口,实现compareTo()方法。

jdbc的连接过程;

手写冒泡排序;

1<=1,1<1;

  1. jdbc连接过程

所需的四个参数(user,password,url,driverClass)

加载JDBC驱动类,创建数据库的连接

创建一个preparedStatement,执行sql语句

处理返回结果,关闭JDBC对象资源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JonTang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值