
java从0到1
文章平均质量分 93
该专栏为本人重新过一遍java知识点时候的笔记汇总,主要是每天的知识点+题解,算是让自己巩固复习,也希望能给初学的朋友们一点帮助,大佬们不喜勿喷(抱拳了老铁!)
不吃~香菜
积跬步以至千里
展开
-
Java学习day30:Stream流入门、集合获取流对象、流对象的方法(知识点详解)
Stream流的出现,是为了解决集合类库现有的弊端,为了提供一种更简洁、更灵活的数据处理方式。通过Stream流,可以轻松地对集合进行过滤、映射、排序、聚合等操作,而不需要显式地使用循环来处理数据。这样可以提高代码的可读性和可维护性,同时也更容易实现并行处理,从而提高程序的性能。原创 2024-02-07 23:23:08 · 1541 阅读 · 0 评论 -
Java学习day29:线程池Pool中创建线程方式(面试必考!)
在昨天的Java学习day28中,我们非常非常详细的讲解了线程池的知识点,其中创建线程池的两种方式里又有其中具体实现方法,昨天我们讲了前六种,而最重要的最后一种,也就是我们将来实际开发中会使用的一种,也是面试会问会考的一种方式。下面我们具体讲解。7.ThreadPoolExecutor:手动创建线程池的方式,它创建时最多可以设置7个参数。1.为什么要求必须掌握这个?**ThreadPoolExecutor相比于其他创建线程池的优势在于,它可以通过参数来控制最大任务数和拒绝策略,让线程池的执行原创 2024-02-05 22:11:49 · 1087 阅读 · 0 评论 -
Java学习day28:线程池Pool(知识点非常非常的详解)
一、线程池Pool1.什么是线程池线程池是一个容纳了多个线程的容器,其中的线程可以反复的使用。省去了频繁创建线程的对象的操作,无需反复创建线程而消耗更多的资源。在Java语言中,并发编程都是通过创建线程池来实现的,而线程池的创建方式也有很多种,每种线程池的创建方式都对应了不同的使用场景,总体来说线程池的创建可以分为以下两类:原创 2024-02-03 22:48:36 · 1242 阅读 · 0 评论 -
Java学习day27:join方法、生产者消费者模式(知识点详解)
join()方法的作用是让"主线程"等待(WAITING状态),一直等到其他线程不再活动为止,然后"主线程"再执行,所以这次打印的结果都是主线程在最下面!!!加join的目的是可以让主线程和子线程可控,如果不加join的话,主线程和子线程随机交叉打印!!!原创 2024-02-03 21:32:22 · 1169 阅读 · 0 评论 -
Java学习day26:和线程相关的Object类的方法、等待线程和唤醒线程(知识点详解)
上面我们看了,Object类的三个主要方法,这三个主要方法就涉及到等待线程和唤醒线程,也就是说,至少两个线程,其中一个线程中使用对象.wait() 那么这个线程就会阻塞,代码不会往下执行了。也就是我们说的,等待线程。如何想让这个线程往下执行呢?再开另外一个线程,使用对象.notify()去唤醒另外那个等待线程。也就是我们说的唤醒线程,如果多个等待线程,一个唤醒线程,则调用notifyAll()方法,就能一次性唤醒所有等待线程。我们用代码来理解//创建这个类的目的,就是实例化出来对象,然后拿这个对象。原创 2024-02-02 22:10:30 · 1064 阅读 · 0 评论 -
Java学习day25:守护线程、死锁、线程生命周期(知识点详解)
死锁*是指两个或两个以上的线程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于*死锁*状态或系统产生了*死锁*,这些永远在互相等待的进程称为*死锁*线程。死锁是一种状态,当两个线程互相持有对方的资源的时候,却又不主动释放这个资源的时候。会导致死锁。这两个线程就会僵持住。代码就无法继续执行。示例1:你的钥匙丢完了。进不了门?咋办?找开锁公司。开锁公司说你得给我提供你的身份证原件。我才能给你开锁。原创 2024-02-02 21:51:55 · 1067 阅读 · 0 评论 -
Java学习day24:线程的同步和锁(例题+知识点详解)
Java学习day24:线程的同步和锁一、同步和锁1.为什么要进行线程的同步?Java是允许多线程(多个线程),当多个线程操作同一个资源(咋操作)的时候,会导致得到或者打印的数据不准确。从而发生冲突。咋解决?加同步锁。2.多线程操作导致数据不准确原创 2024-02-01 21:55:42 · 999 阅读 · 0 评论 -
Java学习day23:线程构造方法、常用方法(例题+知识点详解)
1.新建线程的两种方式1.继承Thread2.实现Runnable接口【开发要用的】代码要自己学会写的!!!2.线程的方法获取当前线程对象设置优先级的获取当前线程的优先级getName();得到线程的名字setName();设置线程的名字sleep();线程的休眠以上,就是今天的所有知识点了。线程方法比较多而且都很重要,大家得多花点时间,静下心看代码,写代码,多理解,多运用,重点是多去运用。加油吧,预祝大家变得更强!原创 2024-02-01 21:39:45 · 923 阅读 · 0 评论 -
Java学习day22:进程和线程、并发并行、线程创建方式(知识点详解)
Java学习day22:进程线程、并发并行、线程创建方式 一、进程和线程 1.什么是进程是独立的运行程序,比如咱们电脑软件,你启动起来以后,他就是一个进程。qq idea进程需要windows系统的分配。可以获取当前的系统的网卡,内存,显卡等原创 2024-01-31 12:26:15 · 1487 阅读 · 0 评论 -
Java学习day21:System类、Runtime类、Date类、Calendar类(知识点详解)
Java学习day21:System类、Runtime类、Date类、Calendar类 一、System类这个类应该说是我们最熟悉的一个类了,是一个系统类,常用的输入输出都需要依靠这个类。1.常用方法1.1currentTimeMillis()这个获取当前时间的方法用的比较多,能够获取从1970-现在的毫秒数---原创 2024-01-31 10:48:04 · 1023 阅读 · 0 评论 -
Java学习day20:常用数据类型的包装类、Math类、Random类(知识点详解)
Java有八大基本数据类型,都有与之对应的包装类,为啥会有八大基本数据类型的包装类?包装类能被实例化,封装了很多方法,可以使用,这样操作八大基本数据类型就比较方便了,所以开发中的实体类都是写的包装类。原创 2024-01-30 15:30:33 · 852 阅读 · 0 评论 -
Java学习day19:StringBuffer类、枚举类enum(知识点详解)
1.String为固定长度的字符串,StringBuilder和StringBuffer为变长字符串;2.stringBuffer是线程安全的,StringBuilder是非线程安全的;3.StringBuffer和StringBuilder的默认初始容量是16,可以提前预估好字符串的长度,进一步减少扩容带来的额外开销。原创 2024-01-30 14:44:53 · 1180 阅读 · 0 评论 -
Java学习day18:IO流(一篇文章知识点详解)
Java学习day18:IO流 为什么会有IO流?在以后开发中会遇到文件的上传和下载,都是需要用到IO流咱们电脑上面所有的文件, 文档 音频 图片 视频 等都是可以进行读和写的。他们怎么读的?怎么写的? 是一下子就写到项目中了吗?不是,是依靠流的形式进行读和写。在读取的时候,会将上传的文件(音频 视频 等)变成流的形式 一点一点来处理的 拆解开来出来的。原创 2024-01-29 18:35:13 · 1196 阅读 · 0 评论 -
Java学习day17:File类(一片文章搞懂重难点)
Java学习day17:File类1.文件和文件夹(文件路径)的抽象表示是专门用来显示出来磁盘上面的文件或者文件夹的,之前都是手动创建,现在可以借助Java封装好的类创建文件夹和文件。为什么要通过代码去创建?原创 2024-01-29 17:44:42 · 973 阅读 · 0 评论 -
Java学习day16:内部类、map集合(知识点详解)
Java学习day16:内部类、map集合(知识点详解)为什么用匿名内部类:为了减少代码量一般接口用匿名内部类,往往是这个接口只有一个抽象方法,不是说所有的抽象类和接口都可以这么用原创 2024-01-29 17:21:33 · 943 阅读 · 0 评论 -
Java学习day15:Object类、set集合(知识点+例题详解)
Java学习day15:Object类、set集合一、Object类Object类是Java中所有类的基类,学习Object类实际上就是在学习他下面的方法。Object类有构造方法Object(),所以是可以直接实例化的。原创 2023-11-30 18:57:40 · 280 阅读 · 0 评论 -
Java学习day14:权限修饰符,集合(知识点+例题详解)
1.在本类中可以使用私有化的成员属性和成员方法2.同一个包下面其他类不能使用私有化的成员属性和成员方法3.其他的包的下面的其他类不能使用私有化的成员属性和成员方法总结:private修饰的成员变量和成员方法只能在本类中使用原创 2023-11-20 23:35:38 · 334 阅读 · 0 评论 -
Java学习day13:泛型(一篇文章搞懂)
Java学习day13:泛型(一篇文章搞懂)1.1为什么要适应泛型,因为在开发中对数据的一致性要求非常高,数组中存的数据 类型都是一致的。但是数组有一个不好的地方,数组预先定义容量!!!原创 2023-11-16 09:44:36 · 230 阅读 · 0 评论 -
Java学习day12:static关键字,字符串声明,字符串常量池
static关键字,修饰成员变量,方法,代码段,字符串声明,== 比较的是内存地址equal比较的是地址,如果地址不一样 再去比较内容。如果内容一样就是true开发中字符串的比较使用的是equals,字符串常量池等原创 2023-11-16 09:03:42 · 235 阅读 · 0 评论 -
Java学习day11:异常
Java学习day11:异常,什么是异常,如何处理异常,异常的捕捉和抛出,自定义异常等原创 2023-11-12 21:35:36 · 217 阅读 · 0 评论 -
Java学习day10:多态、向下转型、instanceof关键字
Java学习day10:多态、向下转型、instanceof关键字一、多态,多态是建立在封装和继承之上的1.1方法的多态,要知道,方法的重写和重载就是方法多态的体现原创 2023-11-12 20:25:00 · 261 阅读 · 0 评论 -
Java学习day09:super、final关键字,抽象类和接口
Java学习day09:super、final关键字,抽象类和接口原创 2023-10-10 20:19:07 · 401 阅读 · 0 评论 -
Java学习day08:面向对象三大特性之一:继承
Java学习day08:面向对象三大特性之一:继承原创 2023-10-08 10:46:44 · 249 阅读 · 0 评论 -
Java学习day07:面向对象三大特性之一:封装
Java学习day07:面向对象三大特性之一:封装原创 2023-10-07 20:37:09 · 398 阅读 · 0 评论 -
Java学习day06:面向对象基础,构造方法,成员/局部变量
Java学习day06:面向对象基础,构造方法,成员/局部变量原创 2023-09-22 16:09:19 · 233 阅读 · 0 评论 -
Java学习day05:排序,选择、冒泡、快速、二分、杨辉三角
Java学习day05:排序,选择、冒泡、快速、二分、杨辉三角原创 2023-09-19 20:34:25 · 463 阅读 · 0 评论 -
Java学习day04:数组(知识点+习题详解)
Java学习day04:数组数组的输出如果直接打印,实际打印的是数组内存地址 :System.out.print(arr);利用一个方法arrays.tostring(数组名)转换一下就ok :System.out.print(Arrays.toString(arr));原创 2023-09-19 16:14:54 · 249 阅读 · 0 评论 -
Java学习day03:方法、break和continue关键字
Java学习day03:方法、break和continue关键字原创 2023-09-18 14:58:06 · 179 阅读 · 0 评论 -
Java学习day02:输入输出、三目运算符、循环结构
Java知识点+题解学习:输入输出、三目运算符、循环结构原创 2023-09-13 17:09:16 · 477 阅读 · 0 评论 -
Java学习day01:数据类型、运算符、分支结构
Java学习day01:数据类型、运算符、分支结构原创 2023-09-13 17:10:34 · 328 阅读 · 0 评论