Java基础
文章平均质量分 95
Java基础
我要200
这个作者很懒,什么都没留下…
展开
-
JDK新特性(Lambda表达式,Stream流)
有且只有一个抽象方法的接口,用@FunctionalInterface去检测我们可以点击这个Comparator这个方法还有我们在线程章节经常用的Runnable接口这时候可能有人会想,Lambda表达式既然只能用函数式接口做为参数,那这个不是很鸡肋嘛难道我要自己去写一个接口,里面专门再只放一个抽象方法,那这不是更麻烦了嘛反正我刚刚学的时候,我确实是有这样的疑问后面问了GPT,其实这个lambda表达式大部分应该是和后面的Stream流一起使用的。原创 2024-07-17 16:42:19 · 1305 阅读 · 0 评论 -
设计模式(工厂模式,模板方法模式,单例模式)
这很容易引发线程不安全问题,我们设想有两个线程,第一个线程需要这个singleton1这个对象,进入了if判断,不过这个时候CPU将线程切换给了第二个线程,那这个时候,第二个线程也进入了if判断,然后CPU再切换会第一个线程,线程一创建了对象,但是我们知道线程二也进入了if判断,它也能创建对象,这就导致了线程不安全问题。所以翻译成Java语言就是,空调是一个抽象类,发动机是一个抽象类,多个抽象类,一个工厂抽象类,不同型号的车是一个类都去继承这个工厂,你需要什么零件就去这个工厂里面配这个零件。原创 2024-07-16 16:20:22 · 913 阅读 · 0 评论 -
网络编程+文件上传操作的理解
概述:在网络通信协议下,不同计算机上运行的程序,进行数据传输比如:通信,视频通话,网游,邮件等只要是计算机之间通过网络进行数据传输,就有网络编程的存在(下面单纯是在Java基础中了解了一下网络编程,感觉理解比较浅显,深入的知识可能得学Netty)原创 2024-07-15 17:29:11 · 945 阅读 · 0 评论 -
Java泛型
泛型(Generics)是 Java 编程语言中的一个重要特性,它允许我们在定义类、接口和方法时使用一个或多个类型参数,从而使得代码具有更高的复用性和类型安全性。对于泛型类来说:new对象的时候确定类型对于泛型方法来说:调用的时候确定类型对于方法接口来说:a.在实现类的时候还没有确定类型,只能在new实现类的时候确定类型了 ->比如 ArrayListb.在实现类的时候直接确定类型了 -> 比如Scanner。原创 2024-07-13 15:20:46 · 728 阅读 · 0 评论 -
Java集合
集合的概念:集合(Collection)是Java编程语言中一种非常重要的数据结构,用于存储和操作一组对象。在Java中,集合框架提供了一系列接口和类,用于表示和操作不同类型的集合,如列表(List)、集(Set)、映射(Map)等。boolean add(E e) : 将给定的元素添加到当前集合中(我们一般调add时,不用boolean接收,因为add一定会成功)extends E> c) :将另一个集合元素添加到当前集合中 (集合合并)void clear():清除集合中所有的元素。原创 2024-07-12 17:26:48 · 828 阅读 · 0 评论 -
Java多线程
锁:那个object对象我们也可以设想,就是一个票肯定只能有一把锁,如果有两把锁,那就和没锁是一样的了,其它线程还是能从另一个锁访问到这里的object对象就是这个锁,保证这个对象唯一就行。死锁是指在多线程或多进程的程序中,各个线程或进程因竞争资源而陷入相互等待的状态,导致它们无法继续执行下去,这种情况被称为死锁。在死锁状态下,没有任何一个线程或进程能够继续执行,它们都在等待其他线程或进程释放资源,而形成了一个闭环。再举两个例子把。原创 2024-07-05 22:59:17 · 769 阅读 · 0 评论 -
Java的字符串
正是应该这个特性,String不能被修改,所以后面才出现了StringBuilder。原创 2024-07-05 14:40:24 · 1015 阅读 · 0 评论 -
Java的Object类
a.如果没有重写Object中的equals方法,那么就会调用Object中的equals方法,比较对象的地址值b.如果重写了Object中的equals方法,那么就会调用重写后的equals方法,应该比较对象的内容在Java中,==和.equals()==用于比较基本数据类型(如int、char等)或引用类型的变量是否指向同一内存地址。当比较对象时,它检查的是两个对象的引用是否完全相同,即它们在内存中的位置是否一样。对于字符串和数组,如果两个对象的引用相等,则==原创 2024-07-01 22:05:56 · 694 阅读 · 0 评论 -
Java异常
我们在写业务的时候,肯定会碰到很多java没有提供的异常,比如密码错误异常,账号错误异常,或者各种业务异常之类的,这个时候就需要自己去创建异常了。原创 2024-07-01 20:33:56 · 610 阅读 · 0 评论 -
Java面向对象特性
int age;System.out.println("工作");System.out.println("吃饭");同时继承父类people,不过在子类中不写任何代码a.调用父类的构造方法:在子类的构造方法中使用super关键字可以调用父类的构造方法。这样可以确保在子类对象被实例化时,父类的构造方法也会被执行。如果不显式使用super关键字调用父类构造方法,Java编译器会默认插入调用父类的无参构造方法。super() -> 调用父类无参构造super(实参)->调用父类有参构造。原创 2024-06-27 16:52:47 · 733 阅读 · 0 评论 -
字符串算法理解
字符串其实只是一种数据结构,非常常见的数据结构,不过因为我自己使用java写的算法,感觉java中的字符串包还是优点不同的:JAVA中的String类和StringBuilder类java中的String内容是不可以改变的,java中的StringBuilder内容是可以变的i++;j++;j=0;举个例子很简单明白:比如主串是aabaabaaf字串是aabaafi,j。原创 2024-03-31 20:51:33 · 981 阅读 · 1 评论 -
Java反射机制
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性(构造方法,成员变量,成员方法);这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象。原创 2024-04-23 20:55:49 · 160 阅读 · 0 评论