![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
AloneDrifters
这个作者很懒,什么都没留下…
展开
-
Java并发编程
Java并发编程原创 2022-06-29 10:18:17 · 114 阅读 · 0 评论 -
Arrays.asList()坑
new ArrayList(Arrays.asList())这样可以使用add remove clear方法原创 2022-06-23 23:45:44 · 66 阅读 · 0 评论 -
反射与注解
文章目录一、反射二、注解一、反射1.1反射引入• 编译时知道类或对象的具体信息,此时直接对类和对象进行操作即可,无需反射(reflection)• 如果编译不知道类或对象的具体信息,此时应该如何做呢?使用反射来实现。比如类的名称放在XML文件中,属性和属性值放在XML文件中,需要在运行时读取XML文件,动态获取类的信息• 反射的应用场合o 在编译时根本无法知道该对象或类可能属于哪些类,程序只依靠运行时信息来发现该对象和类的真实信息o 比如log4j,Servlet、SSM框架技术都用到了反射原创 2022-03-31 09:40:33 · 869 阅读 · 0 评论 -
多线程的线程通信(生产消费)
消费者线程package com.bjsxt.commu5;/** * 消费者线程 */public class ConsumeRunnable implements Runnable { //private Product product = new Product(); private Product product; private Object obj = new Object(); public ConsumeRunnable() { }原创 2021-06-07 15:12:24 · 74 阅读 · 0 评论 -
多线程三种同步方式(模拟银行取款)
方法一:同步代码块Accounpackage com.bjsxt.synch1;/** * 银行账户类 */public class Account { private int balance = 600;//余额 /** * 取款 * @param money */ public void withDraw(int money){ this.balance = this.balance -money; }原创 2021-06-07 15:04:21 · 2189 阅读 · 0 评论 -
多线程三种创建方式
方法一:继承ThreadThreadpackage com.bjsxt.create;/** * @author dell * @data 2021/3/2 * 创建一个线程对象,并启动线程 * * 注意:启动main方法,自动创建main线程 * * thread.join() 阻塞乌龟线程,乌龟执行完,兔子才有机会 * * Thread类的常用方法: * public void run() * thread.star原创 2021-06-07 14:54:16 · 279 阅读 · 0 评论 -
set注意点map遍历
/**使用各种set存储多个学生信息问题1:为什么课程名称(String)放入到HashSet、LinkedHashSet都可以保证唯一性,但是学生(Student)放入到HashSet、LinkedHashSet,却无法实现唯一性。问题2:为什么课程名称(String)放入到TreeSet都可以保证唯一性、有序性,但是学生(Student)放入到TreeSet,却直接抛出异常。java.lang.ClassCastException: com.bjsxt.set.Student cann原创 2021-06-06 18:46:32 · 71 阅读 · 0 评论 -
Arrays工具类(jre中基本类库提供的工具类)
1.Arrays.sort(arr);给数组arr排序2.Arrays.toString(arr)打印arr数组3.Arrays.binarySearch(arr,26);在数组中快速的查询给定元素出现的位置如果找到元素 返回元素索引 没找到返回一个负数在使用时,要求数组必须是升序的4.Array.copyOf(arr,arr.length);拷贝数组,副本5.System.arraycopy(src,srcpos,arr2,destpos,length);...原创 2021-04-15 17:38:39 · 76 阅读 · 0 评论 -
接口
定义接口的详细说明:q 访问修饰符:只能是public或默认。q 接口名:和类名采用相同命名机制。q extends:接口可以多继承。q 常量:接口中的属性只能是常量,总是:public static final 修饰。不写也是。q 方法:接口中的方法只能是:public abstract。 省略的话,也是public abstract。...原创 2021-04-15 17:38:09 · 54 阅读 · 0 评论 -
integer
new Integer(123)每次都会创建一个新的对象;Integer.valueOf(123)会调用缓存池中的对象,多次调用会取得同一个对象的引用。原创 2021-04-15 17:37:42 · 39 阅读 · 0 评论 -
StringBuilder的使用
package com.bjsxt.builder;/**StringBuilder的使用最常用的操作StringBuilder builder = new StringBuilder(“中华人民共和国”);// String—>StringBuilderbuilder.append(“北京市”);String str = builder.toString(); //StringBuilder—>String使用场合是什么?SQL语句的拼接Stri原创 2021-04-15 17:37:04 · 168 阅读 · 0 评论 -
ArrayList基操
//1.创建一个ArrayList对象,用来存储多个分数ArrayList list = new ArrayList();//2.向ArrayList添加分数list.add(67); //向末尾添加list.add(89); // 集合的元素必须是对象类型,不能是基本数据类型。list.add(78);//如果要放入基本数据类型,需要使用包装类list.add(89);//JDK5之后,自动装箱list.add(96);//list.add(Integer.valueOf(67));//原创 2021-04-15 17:36:12 · 64 阅读 · 0 评论 -
arrylist和linked list区别
/**1.不变的是什么1.运行结果没有2.代码没有变化2.变化的是什么1.底层的存储结构发生了变化ArrayList:数组LinkedList:双向链表2.功能的底层实现变了add(2,67)ArrayList:需要大量的后移元素 效率低LinkedList:修改前后节点的指针 效率高get(2)ArrayList:计算地址 1012+4*2=1020 效率高LinkedList:顺藤摸瓜,逐个数数。0 1 2 效率低3.到底是使用ArrayList还是使用L原创 2021-04-15 17:35:32 · 185 阅读 · 0 评论 -
栈队列
//栈//public class Stack extends Vector 已经过时Stack stack = new Stack();//双端队列 可以作为栈来使用 push() 入栈 pop() 出栈 peek() 获取栈顶元素Deque deque ; //ArrayDeque 底层是数组 LinkedList 底层是链表//队列Queue queue; //ArrayDeque 底层是数组 LinkedList 底层是链表//表List list ;//模拟摞盘子De原创 2021-04-15 17:34:51 · 129 阅读 · 0 评论 -
Javase基础
Javase基础1.XML文档作用保存和传输数据类如:<标题> 标题 </标题>2.Java的特性优势(编译型语言和解释性语言)1.安全2.面向对象3.简单性(C++)4.高性能5.分布式6.多线程7.高并发8.跨平台 可移植性高3.常用DOS命令1.cd 进入一个目录2.cd… 进入父目录3.dir 查看本目录下的文件和子目录列表4.cls 清除屏幕命令5.上下键 查找敲过的命令6.tabj键 ...原创 2021-04-15 17:29:42 · 124 阅读 · 0 评论