java
Jacy_Wang
这个作者很懒,什么都没留下…
展开
-
java多线程详解(一)-----概念的引入
1、并发和并行并行:指两个或多个时间在同一时刻发生(同时发生);并发:指两个或多个事件在一个时间段内发生。在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单 CPU 系统中,每一时刻只能有一道程序执行,即微观上这些程序是分时的交替运行,只不过是给人的感觉是同时运行,那是因为分时交替运行的时间是非常短的。而在多个 CPU 系统中,则这些可以并发执行的程序便...转载 2019-01-17 11:48:46 · 182 阅读 · 0 评论 -
java几种常用的设计模式
今天说说几种常见的设计模式,写个博客,记录一下。首先,啥叫设计模式呢? 设计模式是一套被反复使用、多数人知晓的、经过分类编码、代码设计经验的总结。举个例子,把编码比喻成打仗,那么设计模式就是孙子兵法三十六计。设计模式的目的是为了可重用代码、让代码更容易被他人理解、保证代码的可靠性。单例模式作用是保证整个应用程序代码中某个实例有且仅有一个。分为饿汉模式和懒汉模式区别:饿汉模式的特点是加载类...原创 2019-01-24 18:16:58 · 609 阅读 · 0 评论 -
Integer类
我们先看下面这段代码:public static void main(String[] args) { Integer i = 10; Integer j = 10; System.out.println(i == j); Integer a = 128; Integer b = 128; System.out.println(a =...转载 2019-01-16 16:15:27 · 556 阅读 · 2 评论 -
java foreach
foreach 是 Java 中的一种语法糖,几乎每一种语言都有一些这样的语法糖来方便程序员进行开发,编译期间以特定的字节码或特定的方式来对这些语法进行处理。能够提高性能,并减少代码出错的几率。在 Java 中还有比如 泛型、自动拆箱、自动装箱、内部类、枚举等等。foreach 是用来对数组或者集合进行遍历的语法。具体语法如下:for(元素类型 ele : 数组名/Iterable 实例){...转载 2019-01-16 15:25:47 · 20492 阅读 · 0 评论 -
java集合
转自:https://www.cnblogs.com/ysocean/p/6555373.html一、集合的由来通常,我们的程序需要根据程序运行时才知道创建多少个对象。但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型。为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是数组只...转载 2019-01-16 12:08:00 · 161 阅读 · 0 评论 -
java反射
之前一直对反射蒙蒙圈圈的,今天才算彻底搞懂反射的真正意义,知识确实是需要不断的沉淀与积累,慢慢的就对之前接触过但是懵懂的地方有所突破,废话少说,开始正题。什么是反射?我个人理解的反射就是程序能动态的获取类的属性与方法。官方的反射就是在运行状态中,对于任意一个你知道名字的类,都能够知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意方法和属性,并且能改变它的属性。反射能做什么?反...原创 2019-01-15 17:50:06 · 137 阅读 · 0 评论 -
kafka_2.11-0.10.2.1 的生产者 消费者的示例(new producer api)
环境,以及单独的pom.xml文件环境:java 1.8 ,kafka_2.11-0.10.2.1pom.xml文件如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://mav转载 2019-01-15 15:20:39 · 498 阅读 · 0 评论 -
序列化与反序列化(对象流)
1、什么是序列化与反序列化?序列化:指把堆内存中的 Java 对象数据,通过某种方式把对象存储到磁盘文件中或者传递给其他网络节点(在网络上传输)。这个过程称为序列化。通俗来说就是将数据结构或对象转换成二进制串的过程。反序列化:把磁盘文件中的对象数据或者把网络节点上的对象数据,恢复成Java对象模型的过程。也就是将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程。2、为什么要做序列化...转载 2019-01-18 18:36:27 · 225 阅读 · 0 评论 -
java多线程详解(五)-----线程的生命周期
这篇博客介绍线程的生命周期。线程是一个动态执行的过程,它也有从创建到死亡的过程。在 Thread 类中,有一个枚举内部类:上面的信息以图片表示如下:第一张图:第二张图:把等待、计时等待、阻塞看成阻塞一个状态了1、新建状态(new):使用 new 创建一个线程,仅仅只是在堆中分配了内存空间新建状态下,线程还没有调用 start()方法启动,只是存在一个线程对象而已Thread t...转载 2019-01-17 17:19:31 · 283 阅读 · 0 评论 -
java多线程详解(四)-----生产者与消费者
通过前面三篇博客的介绍,基本上对Java的多线程有了一定的了解了,然后这篇博客根据生产者和消费者的模型来介绍Java多线程的一些其他知识。我们这里的生产者和消费者模型为:生产者Producer 生产某个对象(共享资源),放在缓冲池中,然后消费者从缓冲池中取出这个对象。也就是生产者生产一个,消费者取出一个。这样进行循环。第一步:我们先创建共享资源的类 Person,它有两个方法,一个生产对象,...转载 2019-01-17 16:44:40 · 229 阅读 · 0 评论 -
java多线程详解(三)-----线程的同步
今天参照大牛的博客,自己写了一下多线程实现窗口卖票的程序,很久没写多线程了,记得第一家公司就是做的这个,今天记录一下,重写一下。利用多线程模拟 3 个窗口卖票继承 Thread 类package Thread;public class SellThread extends Thread { //定义一共有 50 张票,注意声明为 static,表示几个窗口共享 p...原创 2019-01-17 14:58:35 · 229 阅读 · 0 评论 -
java多线程详解(二)-----如何创建进程和线程
1、在 Windows 操作系统中创建进程在 windows 操作系统中,我们创建一个进程通常就是打开某个应用软件,这便在电脑中创建了一个进程。更原始一点的,我们在命令提示符中来做(我们以打开记事本这个进程为例):第一步:windows+R,输入cmd,打开 cmd 命令提示符第二步:在命令提示符中输入 notepad,按 Enter 键便会弹出记事本应用软件PS:常用的windows ...转载 2019-01-17 11:56:39 · 340 阅读 · 0 评论 -
HashMap和Hashtable的区别
HashMap和HashTable的区别1.两者最主要的区别在于Hashtable是线程安全,而HashMap则非线程安全Hashtable的实现方法里面都添加了synchronized关键字来确保线程同步,因此相对而言HashMap性能会高一些,我们平时使用时若无特殊需求建议使用HashMap,在多线程环境下若使用HashMap需要使用Collections.synchronizedMap(...转载 2019-04-08 16:53:36 · 3496 阅读 · 0 评论