少年乘勇气,百战过乌孙。这篇文章主要讲述学妹一反常态主动联系我,我要不要答应帮她?相关的知识,希望能为你提供帮助。
之前在学校举办的活动上,认识了一个学妹。我死磨硬泡终于加了她的微信,经常给她发微信。
可是她总是对我爱答不理的,我心里总有一天让你高攀不起,后来就很少联系了。今天突然主动联系我:
文章图片
这么久没联系了,一上来就让我帮忙?这照片拍的,手抖的像是得了帕金森似的,字都有重影。
文章图片
放大照片仔细看,这应该是某大厂的笔试题吧。
文章图片
【学妹一反常态主动联系我,我要不要答应帮她()】这些题都不是很难,答案脱口而出。
面向对象的三个特性分别是哪些?
封装封装是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
继承继承是让某个类获得另一个类的属性和方法。它可以使用现有类的除了私有以外的所有功能,不需要重新编写原来的类的情况下对这些功能进行扩展。
多态多态是一个类实例的相同方法在不同情形有不同表现形式,多态机制使具有不同内部结构的对象可以共享相同的外部接口。
什么是双亲委派模型?
类加载器收到类加载的请求后,它不会首先自己去尝试加载这个类,而是把这个请求委派给父类加载器去尝试加载。
只有当父类加载器反馈自己无法完成这个加载请求(它的搜索范围中没有找到所需的类)时,子加载器才会尝试自己去加载。
JVM的内存分几个区域?
程序计数器当前线程所执行的字节码的行号指示器。
虚拟机栈java方法执行的内存模型,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。
本地方法栈本地方法执行的内存模型,和虚拟机栈非常相似,其区别是本地方法栈为JVM使用到的Native方法服务。
堆用于存储对象实例,是垃圾收集器管理的主要区域。
方法区用于存储已被JVM加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。
JVM是如何判断对象是否可以被回收的?
一个对象到GC Roots没有任何引用链相连,JVM就可以对这些对象进行回收了。
要是再答上哪些是 GC Roots就更加分了:
- Java虚拟机栈中引用的对象
- 本地方法栈中引用的对象
- 静态属性引用的对象
- 常量引用的对象
堆被划分为年轻代Young Generation)和老年代(Old Generation)。
年轻代又被划分为一个Eden区和两个Survivor区,大部分对象在Eden区中生成。当Eden空间不足时,触发Minor GC,Eden空间和一个Survivor区中存活的对象将被转移到另外一个Survivor区。
移动时存活的对象年龄加1,当年龄到达指定值后移动到老年代。当老年代空间不足时,触发Full GC,回收整个堆的垃圾。
文章图片
由此我不禁想起了《倚天屠龙记》的一句台词:
文章图片
推荐阅读
- 就全懂了
- Cisco WLAN和WLC
- SC实现隐藏Windows服务维持权限
- #yyds干货盘点# 解决剑指offer(滑动窗口的最大值)
- 写着简单跑得又快的数据库语言 SPL
- 路由基础之RIP故障排除实验
- #yyds干货盘点# leetcode算法题(最长公共前缀)
- 系统安装与备份
- 内存性能测试工具