
Java面试题
八股文
Java世界大便降临
生日前找到工作
展开
-
7.面向对象4大特性:抽象,封装,继承,多态
封装:封装是指尽可能地隐藏对象的内部实现细节,控制对象的修改及访问权限,将某些实现细节部分包装、隐藏起来,并对外提供公开的方法访问私有成员。一般我们是利用private访问修饰符来实现。封装提高了代码的安全性。继承:子类继承父类,在继承了父类的属性的同时,又扩展了子类特有的属性和方法。继承提高了代码的复用性和可扩展性。多态:子类继承父类,重写父类方法,父类引用指向子类对象。同类型的对象可以表现出不同的形态。多态提高了代码的灵活性。原创 2024-10-13 11:32:50 · 201 阅读 · 0 评论 -
6.redis为什么这么快
3.采用了非阻塞的I/O多路复用机制实现高效的并发处理。IO多路复用原理的核心是通过单线程同时监控并处理多个客户端的请求。原理是使用操作系统提供的多路复用接口来监视多个I/O事件。1.redis是一种基于内存的数据库,数据存储在内存中,读写速度快。2.redis采用单线程模型,不需要进行上下文切换。原创 2024-10-12 21:20:09 · 129 阅读 · 0 评论 -
5.http和https的区别
https是加密的安全传输,比http页面加载时间慢,对服务器资源消耗大,ssl证书费用高。3.http是明文传输,数据在传输过程中不加密,由于不需要加解密,资源消耗较小;1.http默认端口80,https默认端口443。2.https = http + SSL协议。原创 2024-10-12 17:09:23 · 114 阅读 · 0 评论 -
4.深拷贝和浅拷贝的区别
浅拷贝:在拷贝一个对象时,对基本数据类型的成员变量进行拷贝,但对引用类型的成员变量只进行引用的传递,并没有创建一个新的对象,当对引用类型的内容修改会影响被拷贝的对象。深拷贝:在拷贝一个对象时,除了对基本数据类型的成员变量进行拷贝,对引用类型的成员变量进行拷贝时,创建一个新的对象来保存引用类型的成员变量。原创 2024-10-12 13:53:42 · 110 阅读 · 0 评论 -
3.集合和数组的区别
4.组在内存中是连续分配的,所以它的索引速度非常快。集合在内存中不是连续分配的,所以索引速度较慢。2.数组只能存储一种数据类型,而集合可以存储不同数据类型(但最好还是确保集合中的元素类型一致)。3.数组可以储存基本数据类型和对象,而集合中只能储存对象(可以以包装类形式存储基本数据类型)。在 Java 中,数组和集合都是用来存储和管理数据的容器。1.数组的大小是固定的,而集合的大小是可变的。原创 2024-10-11 17:13:01 · 154 阅读 · 0 评论 -
2.Java数据类型有哪些
接口(Interface): 定义了一组方法的规范,类可以实现一个或多个接口。在Java中,基本数据类型是按值传递的,而引用数据类型是按引用传递的。枚举(Enumeration): 一种特殊的类,表示一组具名的常量。类(Class): 表示对象的模板,可以创建类的实例。数组(Array): 存储同一类型的元素的集合。其他引用类型: 包括自定义类、接口、数组等。引用数据类型:是数据的引用在栈中,但是他的对象在堆中。实际的值,而引用数据类型存储的是对象的引用(地址)。基本数据类型的数据在栈中可以直接分配内存。原创 2024-10-11 16:17:44 · 199 阅读 · 0 评论 -
1.进程和线程的区别
一个Java程序运行起来就是一个进程,一个进程对应一个JVM实例,一个JVM实例就有一个运行时数据区,一个进程只有一个方法区和堆,进程里的多个线程共享这两个区,每个线程有自己的程序计数器、本地方法栈,虚拟机栈。进程是操作系统进行资源分配的最小单位,而线程是进程中的执行单元。一个进程可以包含多个线程,每个进程都有独立的内存空间,而线程共享进程的内存空间。原创 2024-10-11 16:00:17 · 117 阅读 · 0 评论