东软一面凉拌面筋

辣鸡的自己不会把握机会,政策一改直接崩盘,保研白白陪跑一年。复习一个月考研,怒转工作,重新开始。

(记不太清了,忘记录屏了…)

问了项目,刀具生产这个中一个功能,存的是什么数据。

图片在数据库中用什么形式存,地址除外。

结构采用blob

在这里插入图片描述
先将图片读入进内存,用FileInputStream即可 插入方法中采用setBinaryStream方法,将输入流填入到方法参数中。

问了增删改查会写吗…(真的是东软)

堆和栈的区别

栈内存:栈内存首先是一片内存区域,存储方法和局部变量,方法先进栈,然后方法中再定义变量。每调用一个方法,就有一个方法进栈。变量有自己的作用域,一旦离开作用域,变量就会被释放。栈内存的更新速度很快,因为局部变量的生命周期都很短,方法执行完就结束了。


堆内存:存储的是数组和对象(其实数组就是对象),对象用于封装数据,而且是封装多个(多个属性),如果一个数据消失,这个实体也没有消失,还可以用,所以堆中对象被用完是不会立刻释放的。但是栈不一样,栈里存放的都是单个变量,方法结束了,变量被释放了,那就没有了。堆里的实体虽然不会被释放,但是会被当成垃圾,Java有垃圾回收机制不定时的收取。

释放内存时堆和栈
面试官:栈是自动释放,堆是手动释放(???不是垃圾回收只针对堆吗,后面明白了,释放内存和垃圾回收是不一样的)

当一个实体,没有引用数据类型指向的时候,它在堆内存中不会被释放,而被当做一个垃圾,在不定时的时间内自动回收,因为Java有一个自动回收机制,(而c++没有,需要程序员手动回收,如果不回收就越堆越多,直到撑满内存溢出,所以Java在内存管理上优于c++)。自动回收机制(程序)自动监测堆里是否有垃圾,如果有,就会自动的做垃圾回收的动作,但是什么时候收不一定。

所以堆与栈的区别很明显:

1.栈内存存储的是局部变量而堆内存存储的是实体;

2.栈内存的更新速度要快于堆内存,因为局部变量的生命周期很短;

3.栈内存存放的变量生命周期一旦结束就会被释放,而堆内存存放的实体会被垃圾回收机制不定时的回收。

面试官说的栈自动释放和堆手动释放其实是抛开了语言去讲本身的特性的,如C/C++中确实需要程序员是手动调用free函数来手动释放对象的内存。但是我当时没意识到,只是想着Java中的垃圾回收只针对堆来回收,那不就是自动回收内存吗?

面向过程和面向对象的区别(自己答了面向对象的三个特点,然而答到多态就记不清了)

这里我感觉答一下优缺点,和OOP的特点比较好
面向过程
优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。
缺点:没有面向对象易维护、易复用、易扩展
面向对象
优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护
缺点:性能比面向过程低


封装:封装机制将数据和代码捆绑到一起,避免了外界的干扰和不确定性。它同样允许创建对象。简单的说,一个对象就是一个封装了数据和操作这些数据的代码的逻辑实体。
继承:让一个类获得另一个类的属性和方法,表示面向对象中类和类的一种特殊关系。很好的支持了代码的重用性(reusability)
多态:一个类实例(对象)的相同方法在不同情形有不同表现形式。对象多态性,父类引用指向子类对象,执行子类重写过的方法。提高了代码的重用性。三个必要条件:继承、重写、父类引用指向子类对象

问了意向城市和意向薪资(答成这样我都不好意思说了…)
问了自己以后的发展规划

反问:

  1. 位置还多吗
    其实啥时候位置都多,只是跟自己能力有关,真正的牛人是做产品的,自己拿一个项目能从头说到尾,一直深挖。
  2. 问自己还需要哪些方面加强
    基础知识要加强,说自己相对于其他同学还好一丢丢,但是其实也没多好…比较难一点的也都没敢问,数据结构算法啥的都没敢问

(自己对于一些Java八股文都没答好…自己的项目也说不清…可能面试官都看不下去了,问了几个答的模模糊糊就聊天了…最后结束面的我脸发烫)

自己准备了一周,结果最近复习的基础知识都没问,问了点别的,结果反而没看过…可能就这样挂了吧。不过第一次面,难免,自己也只看了一周而已,凉就凉吧,丢人就丢人吧。随着时间推移,慢慢自己就会把以前学过的再复习回来,没学过的学会,加油。

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值