
Java 基础篇
文章平均质量分 63
xinyi_java
热衷于编写代码,热衷于bug修复,热衷于强化自身技术,yxtp.love
展开
-
并发集合类
它们提供了线程安全的数据结构,使得多个线程可以安全地并发访问和修改集合中的元素,而不需要额外的同步机制。是一个线程安全的动态数组,它通过在修改操作时创建一个新的拷贝来实现线程安全。是一个用于实现生产者-消费者模型的队列,它提供了线程安全的入队和出队操作,还支持阻塞操作,例如。是一个非阻塞的、线程安全的队列实现。它基于无锁算法,适用于高并发的队列操作。,它引入了分段锁机制,允许多个线程同时进行读取操作,从而提高了并发性能。是一个线程安全的哈希表实现,适用于多线程并发访问。的实现,它是一个线程安全的有序集合。原创 2024-01-17 16:13:20 · 629 阅读 · 3 评论 -
Lambda 表达式和函数式编程
Lambda表达式是一种轻量级的匿名函数,它可以被看作是一种简洁的方式来表示单一方法的接口(Single Abstract Method,SAM)。Stream API是Java 8中引入的用于处理集合数据的函数式编程的工具。它允许你以声明性的方式处理数据集合,支持各种操作,如映射、过滤、归约等。Lambda表达式和函数式编程是Java 8引入的两个重要特性,为Java带来了更加灵活和简洁的编程方式。函数式接口是只包含一个抽象方法的接口。包,其中包含了一些常用的函数式接口,如。原创 2024-01-17 16:04:12 · 651 阅读 · 1 评论 -
泛型和类型擦除
Java中的泛型是一种强大的特性,它允许我们编写更通用、类型安全的代码。然而,Java的泛型实现是通过类型擦除来实现的,这意味着在编译时泛型类型信息会被擦除,而在运行时,对象只知道它们的原始类型。Java的泛型在编译时引入类型检查,但在运行时,泛型类型信息会被擦除。泛型提供了编译时类型检查,可以在编译时捕获类型错误,避免在运行时出现类型异常。类中的方法也可以是泛型的,可以独立于类的泛型参数。由于类型擦除,对于泛型类中的方法,重载可能会变得模糊。泛型数组是非法的,因为在运行时无法具体知道泛型类型。原创 2024-01-17 15:53:03 · 978 阅读 · 0 评论 -
计算机【Java】基础知识总结
目录计算机硬件运算器控制器存储器输入设备输出设备软件系统软件应用软件和计算机的交互方式触屏操作语言识别人脸识别指纹识别图形化界面命令行交互和计算机交互的语言机器语言高级语言Java语言概述Java语言特点java环境的搭建注释关键字标识符常量变量数据类型字符类字符串类进制运算符键盘录入获取随机数流程控制方法数组面向对象思想类和对象构造方法代码原创 2021-08-30 15:47:17 · 1923 阅读 · 50 评论 -
JavaSE总结
目录1.java的基本数据类型有哪些?2.int和Integer的区别?3.什么是重载和重写?4.==和equals的区别?5.java中final关键字有哪些作用?6.HashMap和Hashtable的区别?7.创建线程的方式?8.什么是浅拷贝与深拷贝?9.深拷贝与浅拷贝的区别?10.面向对象有哪些特征?11.什么是死锁?怎么防止死锁?13.swtich选择语句中支持哪些数据类型?14.什么是泛型?15.堆栈的区别?16.什么是线程同步,异原创 2021-09-04 21:47:30 · 1451 阅读 · 7 评论 -
Java 基础篇46-50
46.类的初始化过程Customer customer = new Customer();在内存中做了哪些事情? 记载Customer.class文件进内存 在栈内存为customer开辟空间 在堆内存为客户对象开辟空间 对客户对象的成员变量进行默认初始化 对客户对象的成员变量进行显示初始化 通过构造方法对顾客对象的成员变量赋值 学生对象初始化完毕,把对象地址赋值给customer变量 47.如何遍历 Map 集合?使用 keys原创 2021-08-21 15:55:21 · 141 阅读 · 0 评论 -
Java 基础篇41-45
41.Jvm 优化?其实优化这一块我也说不太好,我就照我个人理解的方式说一下,比如说我们得遵守咱们java的编码规范,比如说尽量少使用静态变量,循环最好是不要超过三层以上的嵌套,因为后期维护起来比较麻烦,也比较耗费jvm的内存,去掉项目中不必要的jar包,如果感觉jvm内存不够用,如果你的应用是跑到tomcat服务器上的话,其实这个也是不设置的越大越好,也得经常更改,在我个人理解上如果设置的越大,有可能垃圾回收机制不会及时回收不常用的对象42.Js 中的基本数据类型?1.Undefined:只有原创 2021-08-21 15:15:08 · 138 阅读 · 0 评论 -
Java 基础篇36-40
36.session 和 cookie 区别session是保存到服务器,cookie是保存到客户端的,session相对于cookie来说更安全一些,如何从cookie中取数据?reques.getCookie,(session数据的共享问题如何解决?)37.日期转换帮助类常用的方法?String sDate = "";SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date dt = getDate(date); sD原创 2021-08-21 15:05:29 · 104 阅读 · 0 评论 -
Java 基础篇31-35
31.你以前有遍历过 xml 文件吗?我们使用 Dom4J 遍历 xml 文件,我们在遍历的时候先获取根节点再获取子节点, 或者里面属性啥的.getRoot,getDocument 方法啥的32.什么是反射,反射能干嘛?反射,简单点说,反射机制指的是程序在运行时能够获取自身的信息。在java中只要给定类的名字,name就可以通过反射机制来获得类的所有信息。反射的作用其实就是:在运行时能够判断任意一个对象所属的类,还有就是在运行时构造任意一个类的对象,我们常用的Spring框架也是利用Java反射原创 2021-08-21 14:46:51 · 124 阅读 · 0 评论 -
Java 基础篇26-30
26.什么是多线程?在哪里应用过?线程就是可执行的代码段,线程要服务于进程,一个进程可以有好多个线程,main方法就是主线程,多个线程同时执行就是多线程,线程池就是把准备好的线程放到线程池里,如果处理请求需要调用线程的时候,就从线程池里去调用,用完以后再放回到线程池里,这样就防止高并发节省资源,目前开发中涉及到过多线程就是在秒杀抢单的时候(我们目前开发中没有涉及到过多线程,其实我个人理解用多线程无非是为了提高diamante的执行效率提高客户的体验,解决高并发,但是项目里如果多线程使用多的话,后期的代码原创 2021-08-21 14:30:58 · 118 阅读 · 0 评论 -
Java 基础篇21-25
21.在 Java 中要想实现多线程代码有三种手段?一种是继承Thread类,另一种就是实现Runnable接口,还有一种是实现Callable接口(第四种也是实现callable接口,只不过有返回值而且)22.线程的状态其实线程一般具有五种状态,即创建,就绪,运行,阻塞,终止;new出一个Thread对象后,这时线程是新建start()之后就是就绪状态,等待CPU调用CPU调用之后线程就变成了运行:sleep之后就是阻塞,不会释放监视器上的锁,线程睡起来之后又变成了就绪状态yield()之后就原创 2021-08-21 13:36:02 · 121 阅读 · 0 评论 -
Java 基础篇16-20
16.抽象类和接口的区别?抽象类里可以有普通方法也可以有抽象方法,接口里只能由抽象方法,但jdk1.8以后也可以在接口中添加普通方法了,就是得用default修饰一下这个方法17.什么是接口?有没有做过接口开发?你说的是前后端交互的接口是吧,我主要就是做Java后台开发的,我们开发的时候有个接口文档,我们按照接口文档里规定的返回类型参数请求的URL进行开发就行,我们用postman做的测试,接口文档里主要包括什么?请求的URL,参数,返回值类型,请求方式,get,post,put,delete原创 2021-08-21 13:07:09 · 114 阅读 · 0 评论 -
Java 基础篇11-15
11.hash 碰撞怎么产生,怎么解决?解决方案,堆里面在存储对象地址的时候有一个开放地址的方法:当发生地址冲突时,按照某种方法继续探测哈希表中其他存储单元,知道找到空位置为止。第二种是用rehash(再哈希法):当发生冲突时,使用第二个,第三个,哈希函数计算地址,知道无冲突时。缺点:计算时间增加。比如上面第一次按照首字母进行哈希,如果产生冲突可以按照姓字母首字母第二位进行哈希,再冲突,第三位,直到不冲突为止。第三种是链地址法(拉链法):创建一个链表数组,数组中每一格就是一个链表。若遇到哈希冲突,则将哈原创 2021-08-21 12:37:47 · 104 阅读 · 0 评论 -
Java 基础篇06-10
6.final 和 finally 的区别?Finally是在异常里经常用到的,就是try和catch块里的代码执行完以后,必须要有执行的方法,我们经常在finally里写一些关闭资源,比如关闭数据库连接啊,或者关闭IO流什么的 finally代码块中的代码,不管遇到什么情况,系统都会执行 如果有一些代码一定要执行,可以将代码放在finally代码块中,和try直接配合使用,可以让多段代码之间互不影响,都有执行的机会 7.Java 里可不可以有多继承?不可以,想多继承的话怎么办?原创 2021-08-20 08:53:46 · 112 阅读 · 0 评论 -
Java 基础篇01-05
1.String 类中常用的方法?split():把字符串分割成字符串数组indexOf():从指定字符提取索引位置append():追加字符或字符串trim():去除字符串两端空格replace():替换用 string 类里的哪一个方法替换掉第五个元素? String str = new String("helloWorld"); System.out.println(str.replace(5, 'T')); hashCode():返回此字符串的哈希码s原创 2021-08-20 08:51:47 · 118 阅读 · 0 评论