Java
qnxg_wang
这个作者很懒,什么都没留下…
展开
-
Hook线程及其注入
Hook线程实例应用原创 2021-03-22 22:48:35 · 265 阅读 · 0 评论 -
生产者消费者模型
生产者消费者模型读写分离生产者消费者模型原创 2021-03-21 18:00:43 · 69 阅读 · 0 评论 -
线程构造函数剖析
父线程子线程在创建之初,都会设置一个父线程,且子线程与父线程拥有同等的优先级 private void init(ThreadGroup g, Runnable target, String name, long stackSize, AccessControlContext acc, boolean inheritThreadLocals) { if (name == null) {原创 2021-03-18 22:42:09 · 118 阅读 · 1 评论 -
synchronized and CAS
synchronized:同步1.使用场景伪代码被锁对象public synchronized void method()类的实例对象public synchronized static void method()类synchronized(this)类的实例对象synchronized(this.getClass())类2.例如,我们定义static int count = 0;在两个线程并发执行的时候:/*When two threads exe翻译 2021-03-15 23:49:51 · 59 阅读 · 0 评论 -
Java中null==obj vs obj==null ?
1. null == obj vs obj == nullJava不同于c++if(obj=null)是会报编译错误的,所以不用刻意把null写在前面2. “”.equals(object) vs object.equals("")if("".equals(object))可以避免空指针的问题但是如果写成if(object.equals("")),在object为空时会报空指针错误3....原创 2020-05-05 16:24:35 · 643 阅读 · 0 评论 -
Java-图形重绘
Java图形重绘分享───如何在拖动,放大,缩小容器组件后,保留已经绘制的内容。通常我们所使用的画图板,都有对已经做出图形的保留功能。但我们使用java语言编写的画图板是不具备自动保存图形功能的,这就需要我们自己来通过代码的使用来保存已经存在的图形。要实现这一功能,我们需要首先思考一个问题。为什么我们所绘制的图形会消失呢?容器组件不是依然存在吗?其实,java是通过调用系统底层的画图函数来实...原创 2019-02-16 15:00:31 · 779 阅读 · 0 评论 -
Java参数传递中的值传递和引用传递
在我们了解java的参数传递之前,我们需要首先了解java的数据类型;java的数据类型分为两类;第一类是基本数据类型:byte ,short,int,long,char,double,float,boolean;第二类是引用数据类型:类,抽象类,接口,数组;String是类的一种,但比较特殊。我们最后单独拿出来说;我们通过代码来分析int x=10;int y=x;System....原创 2019-02-16 17:53:55 · 192 阅读 · 0 评论 -
通信协议/UDP通信
通信协议通信协议是UDP/TCP通信的基础,没有通信协议的“通信”是没有任何意义上的,通信协议不是底层函数或者高深的原理,而是程序员之间的一种文本约定。数据在网络上是以字节的形式传送的(底层是01码),我们在读取到数据之后,该以怎样的方式对它进行解码呢?这就是我们在通信之前需要制定的通信协议。如果程序员不知道这个协议,那么他拿到的就是一堆无意义的数据。举一个简单的例子:发送端我们约定,我...原创 2019-08-16 17:56:22 · 303 阅读 · 0 评论 -
Java(数据,字节数组)输入输出流
Java的数据输入输出流是非常强大的IO,使用它可以使我们的程序更加高效。它封装了很多的函数供我们使用。import java.io.DataInputStream;import java.io.DataOutputStream;readInt();//读取一个整型readChar();//读取一个字符readFloat();//读取一个浮点数readLine();//读取一行rea...原创 2019-08-16 17:37:54 · 925 阅读 · 0 评论 -
Java单线程与多线程
1.什么是线程?在我们了解单线程和多线程之前,我们必须搞清楚什么是进程。一个运行起来的程序就是一个进程!那程序又是什么呢?对程序的通俗定义就是:一段可执行的代码。当我们执行一段Java程序时,就在java虚拟机(JVM)中形成了一个进程,一个进程可以包括多个线程。而单线程就是进程的一个基本运行单位。JVM通过在程序中执行main()方法,形成一个线程(主线程)。当main()方法结束后,...原创 2019-03-08 18:17:52 · 3788 阅读 · 0 评论 -
异常之try-catch-finally语句
异常分类Java所有的异常(Exception)都是派生自Throwable,异常是可以被捕获的。而错误(Error)是不能被捕获的。这里详细介绍Java的异常捕获机制(try-catch语句)1.最简单的try-catch语句int x=10;try { System.out.println(x); //代码块 int y=x/0; System.out.println(y);...原创 2019-07-27 22:15:23 · 372 阅读 · 0 评论 -
Java(文件)输入输出流
标准输入流java.util.ScannerScanner s=new Scanner(System.in);//构造一个Scanner对象,其传入参数为System.in System.out.println("请输入一个整数"); BigInteger i=s.nextBigInteger();//输入一个大整数 System.out.println(i);循环输入while(...原创 2019-07-24 13:18:12 · 147 阅读 · 0 评论 -
Java数据结构(1)
在Java当中,基本的数据结构有以下几种向量(Vector)枚举(Enumeration)位集合(BitSet)哈希表(Hashtable)栈(Stack)字典(Dictionary)属性(Properties)这里主要介绍前四种Vector实现了一个动态数组,这个数组与ArrayList类似,不同点主要有以下几种Vector 是同步访问的。Vector 包含了许多传统...原创 2019-05-28 00:18:10 · 120 阅读 · 0 评论