• blog 线程的同步问题

    java基础 0 多线程带来的问题: 线程有时候回和其他线程共享一些资源,比如内存、数据库等。当多个线程同时读写同一份共享资源的时候,可能会发生冲突。这时候,我们就需要引入线程“同步”机制,即各位线程之间要有顺序使用,不能杂乱无章随意使用。实例 5863
  • blog 有关线程的常用方法总结

    java基础 0 构造方法 1.Thread(Runnable target)。参数为实现了Runnable接口的类。 2.Thread(String name)。参数为线程的名字。 3.Thread(Runnable target,Str 4139
  • blog java中byte类型相加超出范围变负数解析

    java基础 0 java中byte类型相加超出范围变负数解析例: @Test public void t() { byte b=127; b+=127; System.out.println(b); }最终运行得出的结果时 -2源码解析: publ 3206
  • blog 阻塞队列及其原理

    java基础 0 1.什么是阻塞队列 阻塞队列是一个在队列基础上又支持了两个附加操作的队列。2.支持阻塞的插入方法:队列满时,队列会阻塞插入元素的线程,直到队列不满。1.支持阻塞的移除方法:队列空时,获取元素的线程会等待队列变为非空。2.阻塞队 2873
  • blog java数据类型

    java基础 0 java数据类型java数据类型基本数据类型数值型整数类型(byte,short,int,long)浮点类型(float,double)字符型(chart)布尔型(boolean)引用类型类(class)接口(interface)数组byt 2863
  • blog 为什么静态方法不能new非静态内部类的实例对象?

    java基础 0 静态方法不能new内部类的实例对象解析:我们知道非静态内部类有一个特点就是可以访问外部类对象的非静态属性,而外部类的的属性只有再创建对象以后才有,而静态方法属于类,不属于对象,所以再main方法执行的时候并没有创建Main4的实例对象,而这 2614
  • blog io流 和 自定义输入输出流

    java基础 0 说起io流最常用的地方就是文件操作,例如从一个文件中读取内容,或者把内容输入到文件中,这些都是io流的基本操作。其实流在编程语言中是一个抽象概念,流的概念:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。它的特性是进行数 2534
  • blog java集合List集合使用Collections排序

    java基础 0 有Student类,一个List集合中有若干Student对象,对此集合按分数排序Studentpackage com.example.demo.entity;@SuppressWarnings('rawtypes')public clas 2243
  • blog java io File类常用方法

    java基础 0 java io File类常用方法一个File类的对象,表示了磁盘上的文件或目录(注意其并不是文件本身)。1.构造方法2.文件的创建删除//如果文件存在返回false,否则返回true并且创建文件 boolean createNewFile 2229
  • blog equals()与hashCode()方法总结

    java基础 0 1.hashCode方法的作用: 对于包含容器类型的程序设计语言来说,基本上都会涉及到hashCode,hashCode方法的主要作用是为了配合基于散列的集合一起正常运行,这样的散列集合包括HashSet、HashMap以及H 2210
  • blog Object的wait和notify方法的使用

    java基础 0 使用wait和notify的条件wait() 与 notify/notifyAll 方法必须在同步代码块中使用,如果不是在同步方法或同步代码块中使用则会报异常Exception in thread 'main' java.lang.Ille 2197
  • blog java序列化和反序列化

    java基础 0 概念:Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程;序列化:对象序列化的最主要的用处就是在传递和保存对象的时候,保证对象的完整性和可传递性。序列化是把对象转换成有序字节流,以 2100
  • blog java线程池

    java基础 0 为什么用线程池:1.创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率2.线程并发数量过多,抢占系统资源从而导致阻塞3.对线程进行一些简单的管理ThreadPoolExecutor线程池ThreadPoolEx 1900
  • blog java启动线程的两种方式

    java基础 0 java启动线程的三种方式1.继承 Thread类,重写run方法,调用start方法启动线程2.实现Runnable接口,重写run方法,调用start方法启动线程3.实现Callable接口代码如下前两种方式:package club. 1874
  • blog asm动态生成类和get and set方法

    java基础 0 asm动态生成类和get and set方法1.自定义类加载器package club.jiajia.test;public class MyClassLoader extends ClassLoader{ public Cla 1846
  • blog 线程之间的通讯

    java基础 0 1.什么是线程通信 线程之间通信的两个基本问题是互斥和同步。 线程同步是指线程之间所具有的一种制约关系,一个线程的执行依赖另一个线程的消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒。2.syn 1744
  • blog java注解的理解与运用

    java基础 2 在用各种框架的时候,注解是几乎都会遇到的,那么他的原理是怎么样的呢!来探究一下1.我们用过很多注解比如下面的 jdk自带的注解@Override 表示覆盖或重写父类的方法;@Deprecated 表示该方法已经过时了。(当方法或是类上面有@ 1527
  • blog java集合之ArrayList

    java基础 1 ArrayList的实现是一个动态数组,从源码中也可以看出。这就决定了他的查找效率高,可以直接通过下标访问。但是对于删除和增加元素,需要大量的移动元素,所以插入和删除的效率就很低。ArrayList不是线程安全的,只能用在单线程环境下,多线 1421
  • blog asm实例对象方法的调用

    java基础 0 asm实例对象方法的调用1.需要的jar包2.我们需要通过asm生成的目标类如下:package club.jiajia.test3;public class Examp5 { public int method(){ Abc a=new 1363
  • blog java常用反射方法用法总结

    java基础 0 java常用反射方法以及用法总结package reflect;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import jav 1358