javaSE
文章平均质量分 71
javaSE
wu·奥力给
这个作者很懒,什么都没留下…
展开
-
java集合学习笔记
集合什么是集合:对象的容器,实现对对象的常用操作集合和数组的区别数组长度固定,集合的不固定数组长度可以存储基本数据类型和引用类型,集合只能存储引用类型Collection体系集合[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8BLKdxQm-1617759551669)(C:\Users\wu\Desktop\markdown\image-20210316201324157.png)] //(1)添加元素(2)删除元素(3)遍历元原创 2021-04-07 09:42:26 · 152 阅读 · 2 评论 -
Java 抽象类与接口的区别
Java 抽象类与接口的区别是什么?抽象类有构造器,接口没有构造器但两者都不能被实例化实现接口的非抽象类必须要实现该接口的所有方法。抽象类可以不用全部实现,子类(如果不是抽象类)则必须覆写抽象类之中的全部抽象方法(如果子类没有实现父类的抽象方法,则必须将子类也定义为为abstract类)包含抽象方法的一定是抽象类,但是抽象类不一定含有抽象方法抽象类只支持单继承,接口支持多继承抽象类中的抽象方法的修饰符只能为public或者protected,默认为public;...原创 2021-03-08 09:17:03 · 58 阅读 · 0 评论 -
mybaits入门笔记
MyBatis入门及使用MyBatis 是一款优秀的持久层框架MyBatis 支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。第一个Mybaits程序思路:搭建环境->导入Mbaits–>编写代码–>测试原创 2021-03-04 09:59:14 · 205 阅读 · 1 评论 -
注解和反射
注解和反射注解注解–Annotation是从JDK5.0开始引入的技术.Annotation的作用∶对程序作出解释但不是程序本身(这一点和注释(comment)没什么区别)可以被其他程序(比如:编译器等)读取.Annotation的格式:注解是以"@注释名"在代码中存在的,还可以添加一些参数值﹐例如:抑制警告 @SuppressWarnings(value=“unchecked”)Annotation在哪里使用?可以附加在package , class , method , field原创 2021-02-05 09:59:15 · 83 阅读 · 0 评论 -
线程协作
线程协作生产者和消费者模式这是一个线程同步问题,生产者和消费者共享同一个资源,并且生产者和消费者之间相互依赖,互为条件.对于生产者,没有生产产品之前,要通知消费者等待,而生产了产品之后,又需要马上通知消费者消费对于消费者﹐在消费之后,要通知生产者已经结束消费,需要生产新的产品以供消费.在生产者消费者问题中,仅有synchronized是不够的synchronized可阻止并发更新同一个共享资源,实现了同步synchronized不能用来实现不同线程之间的消息传递(即我们需要另外的方法来解决原创 2021-02-04 21:35:12 · 134 阅读 · 0 评论 -
线程同步机制
线程同步多个线程操作同一个资源并发:同一个对象被多个线程同时操作解决方式:队列+锁,队列为了按序访问对象,当一个线程获得对象的排他锁,独占资源,其他线程必须等待,使用后释放锁即可.存在以下问题:一个线程持有锁会导致其他所有需要此锁的线程挂起在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题如果一个优先级高的线程等待一个优先级低的线程释放锁会导致优先级倒置,引起性能问题同步方法synchronized方法和synchronized块同步方法: public s原创 2021-02-04 20:16:30 · 91 阅读 · 0 评论 -
线程的五大状态
线程的五大状态创建状态、就绪状态、阻塞状态、运行状态、死亡状态Thread.State线程状态。线程可以处于以下状态之一:NEW:尚未启动的线程处于此状态。RUNNABLE:在Java虚拟机中执行的线程处于此状态。BLOCKED:被阻塞等待监视器锁定的线程处于此状态。WAITING:正在等待另一个线程执行特定动作的线程处于此状态。TIMED_WAITING:正在等待另一个线程执行动作达到指定等待时间的线程处于此状态。TERMINATED:已退出的线程处于此状态。一个线程可以在给定时间点原创 2021-02-03 10:58:18 · 103 阅读 · 0 评论 -
线程创建的三种方式
线程创建继承Thread类实现Runnable接口实现Callable接口继承Thread类自定义线程类继承Thread类重写run()方法创建线程对象,调用start()方法启动线程线程不一定立即执行,CPU调度安排//创建线程方式一:继承Thread类,重写run()方法,调用start开启线程public class testThread extends Thread{ @Override public void run() { //run原创 2021-02-01 19:56:42 · 82 阅读 · 0 评论