
java知识点
仅供学习复习
麦当基
日志小笔记,仅供个人学习记录复习
展开
-
ABC类网络的范围,IP子网划分、构造超网
首先,A类、B类和C类的地址范围不同:A类地址:1.0.0.1-126.255.255.254B类地址:128.1.0.1-191.255.255.254C类地址:192.0.1.1-223.255.255.254组成部分不同:A类地址:由1字节(每个字节是8位)的网络地址和3个字节主机地址组成B类地址:由2个字节的网络地址和2个字节的主机地址组成C类地址:由3个字节的网络地址和1个字节的主机地址组成网络地址的最高位不同:A类地址:0B类地址:10C类地址:110第一段数字范围不同:A类原创 2022-11-01 12:07:01 · 16999 阅读 · 0 评论 -
拦截器和过滤器
拦截器过滤器原创 2022-09-21 10:56:26 · 120 阅读 · 0 评论 -
Lambda表达式的优点
字符串拼接的函数式接口。原创 2022-09-07 17:09:01 · 1266 阅读 · 0 评论 -
servlet、Http、Request、Response、ServletContext对象的详解
【代码】servlet、Http、Request、Response详解。原创 2022-09-12 18:26:19 · 355 阅读 · 0 评论 -
Socket网络编程、以及文件上传
【代码】socket网络编程。原创 2022-09-07 12:58:26 · 174 阅读 · 0 评论 -
数据库复习、设计、三大范式、查询、多表查询
【代码】数据库复习。原创 2022-09-08 18:45:43 · 132 阅读 · 0 评论 -
Thread类的常用方法、创建多线程的两种方法
public static void sleep(long millis):使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行)。毫秒数结束之后,线程继续执行。4.创建Thread类对象,构造方法中传递Runnable接口的实现类对象。5.调用Thread类中的start方法,开启新的线程执行run方法。2.在实现类中重写Runnable接口的run方法,设置线程任务。3.创建一个Runnable接口的实现类对象。1.创建一个Runnable接口的实现类。继承Thread类并重写其run方法。原创 2022-09-04 17:48:39 · 416 阅读 · 0 评论 -
Collections集合工具类
sort(List list)使用前提:被排序的集合里边存储的元素,必须实现Comparable,重写接口中的方法compareTo定义排序的规则。super T> ):将集合中元素按照指定规则排序。Comparable:自己(this)和别人(参数)比较,自己需要实现Comparable接口,重写比较的规则compareTo方法。3.public static void sort(List list):将集合中元素按照默认规则排序。Comparator:相当于找一个第三方的裁判,比较两个。原创 2022-09-03 20:00:27 · 75 阅读 · 0 评论 -
java线程池
频繁创建和销毁线程大大降低系统的效率,所以需要线程池。当线程池中的线程执行任务完毕后会将线程重新归还给线程池,以供其他任务使用。原创 2022-09-05 12:22:45 · 116 阅读 · 0 评论 -
线程的六种状态、线程的等待唤醒(线程的通信)
如果能获取锁,线程就从WAITING状态编程RUNNABLE状态;否则,从wait set出来,又进入entry set,线程就从WAITING状态又变成BLOCKED状态。原创 2022-09-05 01:41:07 · 238 阅读 · 0 评论 -
Java的异常、子父类异常注意事项、自定义异常
String getMessage() 返回此 throwable 的简短描述。String toString() 返回此 throwable 的详细消息字符串。void printStackTrace() JVM打印异常对象 , 默认此方法 , 打印的异常信息是最全面的 //System.out.println(e.getMessage());//文件的后缀名不对 //System.out.println(e.toString());原创 2022-09-04 15:23:58 · 144 阅读 · 0 评论 -
java中的可变参数
【代码】java中的可变参数。原创 2022-09-03 19:15:10 · 127 阅读 · 0 评论 -
数组、红黑树数据结构特点
增删慢:数组的长度是固定的,我们想要删除或增加一个元素,必须创建一个新的数组,再把源数组的其他数据复制过来。最后再把新数组的首地址交给源数组的引用。查询快:数组的地址是连续的,我们通过数组的首地址可以找到数组,通过数组的索引可以快速查找某一个元素。原创 2022-09-03 13:41:24 · 322 阅读 · 0 评论 -
线程通信中wait和sleep区别
如果线程一使用wait,那么第三句话一定会出现在第一和第二句话之间;如果线程一使用sleep,那么线程三一定不会在第一和第二句话之间。ps:可以通过设置sleep来避免CPU的抢占。原创 2022-09-05 11:28:14 · 263 阅读 · 0 评论 -
ObjectMapper使用详细介绍
ObjectMapper使用详细介绍原创 2022-09-17 00:27:02 · 301 阅读 · 0 评论 -
多线程安全问题以及解决方式
因为每条语句执行都需要时间的,当某一线程抢占到CPU执行权时,便进入 run 方法执行到 if 语句,还没来得及对共享数据进行操作,就失去了CPU的执行权,被其他线程抢占。等再次获得CPU执行权并继续对共享数据进行操作时,可能此时共享数据已经不满足执行条件了,但是还得继续执行。这样就出现了安全问题。原创 2022-09-04 20:05:58 · 2080 阅读 · 0 评论 -
java事务机制
【代码】java事务机制。原创 2022-09-09 18:51:35 · 219 阅读 · 0 评论 -
java中的泛型类、泛型接口、泛型方法、泛型通配符
1.定义一个含有泛型的类,模拟ArrayList集合2.泛型是一个未知的数据类型,当我们不确定什么什么数据类型的时候,可以使用泛型3. 泛型可以接收任意的数据类型,可以使用Integer,String,Student…4.创建对象的时候确定泛型的数据类型} } //不写泛型默认为Object类型 GenericClass gc = new GenericClass();gc . setName("只能是字符串");原创 2022-09-03 12:29:42 · 351 阅读 · 0 评论 -
java集合中的map,以及HashMap与HashSet区别
1.Map集合是一个双列集合,一个元素包含两个值(一个key,一个value)2.Map集合中的元素,key和value的数据类型可以相同,也可以不同3.Map集合中的元素,key是不允许重复的,value是可以重复的4.Map集合中的元素,key和value是一一对应HashSet创建时new的是HashMap,只使用到key。原创 2022-09-04 01:15:14 · 414 阅读 · 0 评论 -
三大范式、分组查询注意事项、事务、隔离等级、jdbc小总结
三大范式,事务特性原创 2022-09-11 11:23:06 · 318 阅读 · 0 评论 -
java中并发与并行,线程与进程,主线程的概念、多线程的原理、多线程内存图
单核心的CPU在不同任务间切换执行;多核心同时执行多个任务。我们的电脑中同时开启多个任务,看似是同时在运行,其实也是多核心在任务间高速切换。原创 2022-09-04 16:14:35 · 163 阅读 · 0 评论 -
servlet概念及原理
WebServlet注解源代码。原创 2022-09-12 01:15:59 · 172 阅读 · 0 评论 -
Java中的继承与接口、静态关键字、静态代码块
1.接口中可以定义默认方法(default修饰),这样可解决接口升级的问题(比如接口中新增一个抽象方法会导致所有已经投放使用的实现类报错)。实现类会默认实现接口中的默认方法,实现类也可以对默认方法进行覆盖重写。1.子类构造方法当中有一个默认隐含的“super()”调用,所以一定是先调用的父类构造,后执行的子类构造。4.如果实现类实现的多个接口中,存在重复的默认方法,那么实现类必须要对冲突的默认方法 进行覆盖重写。5.如果一个类的直接父类当中的方法,和接口当中的默认方法产生了冲突,优先用父类当中的方法。..原创 2022-08-31 11:52:06 · 686 阅读 · 0 评论 -
java的内部类、内部类的同名变量访问、匿名内部类
注意:如果局部内部类想访问所在方法的局部变量,那么这个局部变量必须是【有效final的】,从java8开始,只要保证该局部变量事实上没变,final关键字可以省略。【外部类名称.内部类名称 对象名 = new 外部类名称().new 内部类名称();2.局部内部类(其中包括匿名内部类) (在成员方法里面定义,只能在该方法内使用)3.匿名内部类是省略了【实现类/子类名称】,但是匿名对象是省略了【对象名称】1.匿名内部类,在【创建对象】的时候,只能使用唯一一次。强调:匿名内部类和匿名对象不是一回事!...原创 2022-09-01 14:16:02 · 439 阅读 · 0 评论 -
java集合中的List和Set
迭代器接口用于对集合进行遍历,需要使用Iterator接口的实现类对象才能实现迭代遍历,collection接口中有个方法是iterator()可以获取Iterator接口的实现类对象(迭代器)。当获取到迭代器的实现类对象后,会把指针(索引)指向集合的-1索引,hasnext()用于判断集合中还有没有下一个元素,如果True,会取出下一个元素并将指针向后移动一位。数组存储的是同一类型的元素,可以存储基本类型的数据。7.Object[ ] toArray(): 把集合中的元素,存储到数组中。原创 2022-09-02 23:32:38 · 816 阅读 · 0 评论 -
java内存划分、类加载过程以及数组的内存图、字符串常量池
内存图原创 2022-08-31 15:49:56 · 316 阅读 · 0 评论 -
对象的内存图
对象内存图原创 2022-08-31 15:07:51 · 92 阅读 · 0 评论 -
多态的注意事项、Instanceof判断类型、反射对象class.newInstance()
2.间接通过成员方法访问成员变量,看该方法属于谁,则优先用谁,没有则向上找。(即如果子类覆盖重写了,就用子类的成员方法访问子类的成员变量,如果子类没有覆盖重写,则用父类的成员方法访问父类的成员变量)。1.直接通过对象名称访问成员变量,看引用是哪个(即看等号左边),就优先用谁的成员变量,没有则向上找。代码中的多态体现:父类引用指向子类对象;接口引用指向实现类对象。......原创 2022-09-01 00:55:51 · 274 阅读 · 0 评论