- 博客(11)
- 收藏
- 关注
原创 【Java学习】多线程-线程同步方案&线程池
线程同步就是让多个线程实现先后依次访问共享资源,这样就解决了安全问题,它最常见的方案就是加锁加锁:每次只允许一个线程加锁,加锁后才能进入访问,访问完毕后自动解锁,然后其他线程才能再加锁进来线程池就是一个可以复用线程的技术它就像一个大的池子一样,里面可以放置一些线程,当需要的时候,就从里面取出来用,用完了就还回去如此一来,就不必频繁的创建和销毁线程了,大大的提高了线程的利用率,提供系统的性能1、任务进入线程池,先看核心线程是否满了,如果没满则创建新的核心线程。
2024-09-12 22:16:26
1134
原创 【Java学习】配置文件&日志&多线程
程序中的日志,通常就是一个文件,里面记录的是程序运行过程中的各种信息。日志会展示在控制台不能更方便的将日志记录到其他的位置(文件,数据库)想取消日志,需要修改源代码才可以完成在实际项目开发中就会使用日志技术,可以将系统执行的信息,方便的记录到指定的位置(控制台、文件中、数据库中)。也可以随时以开关的形式控制日志的启停,无需侵入到源代码中去进行修改。日志接口:设计日志框架的一套标准,日志框架需要实现这些接口。日志框架:大佬或者第三方公司已经做好的实现代码,后来者直接可以拿去使用。
2024-09-08 21:53:16
2109
原创 【Java学习】递归,斐波那契数案例
递归思路:第5个数需要第4个和第3个数相加,而第4个数又需要第3个数和第2个数相加,第三个数又又需要第2个数和第1个数相加...以此类推,第2个数和第1个数固定为1,那么最下层的递归就可以根据第1个和第2个数层层向上计算,所以这两个数就可以作为递归返回的位置。在一层层递归形成之后,一旦递归到最后的第1、第2个数时,便不会再执行调用方法自己的语句,直接返回数值,此时一层层的递归便开始一边根据下面返回的数值计算,一边将计算得到的数值返回上一层,最终返回要求得的数。在未递归到第1、第2个数时,方法会直接执行。
2024-09-05 21:55:17
412
原创 【Java学习】Collection&List&Set
Set系列集合特点:无序,不可重复HashSetLinkedHashSet:存取有序TreeSet:可排序Set要用到的常用方法,基本上就是Collection提供的。自己几乎没有额外新增一些常用功能!(二)HashSetQ&A1、如果希望记住元素的添加顺序,需要存储重复的元素,又要频繁的根据索引查询数据?答:用ArrayList集合(有序、可重复、有索引),底层基于数组的。(常用)2、如果希望记住元素的添加顺序,且增删首尾数据的情况较多?
2024-09-05 01:30:50
1043
原创 【Java学习】异常&Lambda表达式
作用:可以做为方法内部的一种特殊的返回值,以便通知上层调用者底层的执行情况!Java无法为这个世界上全部的问题都提供异常类来代表, 如果以后我们自己写的代码中的某种问题,想通过异常来表示,以便用异常来管理该问题,那就需要自己来定义异常类了。自定义运行时异常定义一个异常类继承RuntimeException重写构造器通过throw new异常类(xxx)来创建异常对象并抛出此方法编译阶段不报错,提醒不强烈,运行时才可能出现!自定义编译时异常定义一个异常类继承Exception重写构造器。
2024-09-03 22:01:38
677
原创 【Java学习】Map集合&Stream流
Map集合称为双列集合,一次需要存一对数据做为一个元素,格式:{key1=value1 , key2=value2 , key3=value3 , ...}Map集合的每个元素分为两部分:key和value,key称为键,value称为值,整体叫键值对,因此Map也叫“键值对集合”Map集合的所有键是不允许重复的,但值可以重复,键和值是一一对应的,每一个键只能找到自己对应的值在需要存储一一对应的数据时,就可以考虑使用Map集合来做,例如购物网站中,商品编号和商品数量一一对应Map集合体系。
2024-09-03 19:47:56
1825
原创 【Java学习】内部类&泛型
内部类是类中的五大成分之一(成员变量、方法、构造器、代码块、内部类);如果一个类定义在另一个类的内部,这个类就是内部类;场景:当一个类的内部,包含了一个完整的事物,且这个事物没有必要单独设计时,就可以把这个事物设计成内部类。成员内部类:位于一个类里面成员位置的类静态内部类:使用static修饰的成员内部类局部内部类:在方法里面定义的类匿名内部类[重要]:一种特殊的局部内部类。
2024-09-01 21:53:32
1780
原创 【Java学习】静态static&继承
多个类中存在相同属性和行为时,我们可以将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那一个类即可,其中,多个类可以称为子类,单独被继承的那一个类称为父类超类(superclass)或者基类。继承:就是子类继承父类的属性和行为,使得子类对象可以直接具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。好处:1、提高代码的复用性(减少代码冗余,相同代码重复利用)2、使类与类之间产生了关系继承的格式class 父类 {...
2024-08-28 20:59:33
1678
2
原创 【Java学习】多态&抽象类&接口
一般情况下,父类中的方法被子类们重写,而且子类各自的实现都不一样,那么父类中不停被重写的方法只有方法声明还有意义,方法主体便可以省去,父类只需提供一个没有方法体的定义即可,具体功能交给子类自行定义。没有方法体的方法称为抽象方法。Java语法规定,包含抽象方法的类就是抽象类。抽象方法: 没有方法体的方法。抽象类:包含抽象方法的类。abstract在抽象类中可以用抽象方法,也可以有普通方法,构造方法,成员变量等。而接口是更加彻底的抽象,JDK7之前,包括JDK7,接口中全部是抽象方法。
2024-08-28 11:02:59
902
原创 【Java学习】IDEA好用小插件 smart input 智能切换中英文输入法
在使用IDEA编程时,一遍又一遍的点击shift键切换中英文输入法令人头疼,在此分享一个好用的IDEA小插件,名为smart input,可以在键入英文双引号时自动切换中文输入法,点击方向键将光标移出英文引号区域时又可以自动切换为英文输入法,提高了不少效率。
2024-08-26 21:59:32
1475
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人