sihai的博客

life is always beautiful like sunshine

排序:
默认
按更新时间
按访问量

java等学习资源分享

文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选

2018-03-01 18:27:44

阅读数:137

评论数:0

java并发编程基础系列(五): 创建线程的四种方式

线程的创建一共有四种方式: 继承于Thread类,重写run()方法; 实现Runable接口,实现里面的run()方法; 使用 FutureTask 实现有返回结果的线程 使用ExecutorService、Executors 线程池。   在详细了解这四种方法之前,先来理解一下为什么线程...

2018-05-09 17:06:00

阅读数:18

评论数:1

并发基础(四): java中线程的状态深入浅出

一、线程的五种状态   线程的生命周期可以大致分为5种,但这种说法是比较旧的一种说法,有点过时了,或者更确切的来说,这是操作系统的说法,而不是java的说法。但对下面所说的六种状态的理解有所帮助,所以也写出来,作为参考。 1. NEW: 线程的新建状态,是指通过New关键字创建了Thread类...

2018-05-09 16:36:10

阅读数:13

评论数:0

并发基础(三): java线程优先级小试牛刀

在不同的JVM中(JVM也算是一个操作系统),有着不同的CPU调度算法,对于大部分的JVM来说,优先级也是调度算法中的一个参数。所以,线程优先级在一定程度上,对线程的调度执行顺序有所影响,但不能用于保证线程的执行顺序,因为优先级仅仅是其中一个参数而已,其他参数还可能有线程的等待时间、执行时间等。而...

2018-05-09 16:23:14

阅读数:9

评论数:0

并发基础(二):Thread类的API总结

Thread 类是java中的线程类,提供给用户用于创建、操作线程、获取线程的信息的类。是java线程一切的基础,掌握这个类是非常必须的,先来看一下它的API. 1、字段摘要 static int MAX_PRIORITY 线程可以具有的最高优先级 static int...

2018-05-09 16:12:54

阅读数:18

评论数:0

并发基础(一) 线程介绍

一、线程的简介 线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针(有一个程序计数器,它的作用是存放下一条指令所在单元的地址的地方),寄存器集合(寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存...

2018-05-08 08:50:10

阅读数:17

评论数:0

Java 并发性和多线程

一、介绍 在过去单 CPU 时代,单任务在一个时间点只能执行单一程序。之后发展到多任务阶段,计算机能在同一时间点并行执行多任务或多进程。虽然并不是真正意义上的“同一时间点”,而是多个任务或进程共享一个 CPU,并交由操作系统来完成多任务间对 CPU 的运行切换,以使得每个任务都有机会获得一定的时...

2018-05-04 08:06:31

阅读数:17

评论数:0

java基础提升篇:深入浅出Java多线程

初遇 Java给多线程编程提供了内置的支持。一个多线程程序包含两个或多个能并发运行的部分。程序的每一部分都称作一个线程,并且每个线程定义了一个独立的执行路径。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配...

2018-05-04 07:49:55

阅读数:15

评论数:0

java基础提升篇:Java 序列化的高级认识

如果你只知道实现 Serializable 接口的对象,可以序列化为本地文件。那你最好再阅读该篇文章,文章对序列化进行了更深一步的讨论,用实际的例子代码讲述了序列化的高级认识,包括父类序列化的问题、静态变量问题、transient 关键字的影响、序列化 ID 问题。在笔者实际开发过程中,就多次遇到...

2018-05-03 22:47:35

阅读数:15

评论数:0

java基础提升篇:深入分析Java的序列化与反序列化

初遇 序列化是一种对象持久化的手段。普遍应用在网络传输、RMI等场景中。本文通过分析ArrayList的序列化来介绍Java序列化的相关内容。主要涉及到以下几个问题: 怎么实现Java的序列化 为什么实现了java.io.Serializable接口才能被序列化 trans...

2018-05-03 22:25:13

阅读数:17

评论数:0

java基础提升篇:synchronized同步块和volatile同步变量

初遇 Java语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。 synchronized同步块 Java中的同步块用syn...

2018-05-03 22:15:02

阅读数:14

评论数:0

java基础提升篇:深入剖析Java中的装箱和拆箱

一.什么是装箱?什么是拆箱? 我们知道 Java为每种基本数据类型都提供了对应的包装器类型,至于为什么会为每种基本数据类型提供包装器类型在此不进行阐述,有兴趣的朋友可以查阅相关资料。在Java SE5之前,如果要生成一个数值为10的Integer对象,必须这样进行: Integer i =...

2018-05-03 22:08:22

阅读数:13

评论数:0

java基础提升篇:Java中Native关键字的作用

初遇 初次遇见 native是在 java.lang.Object 源码中的一个hashCode方法: public native int hashCode(); 为什么有个native呢?这是我所要学习的地方。所以下面想要总结下native。 一、认识 native 即 JNI,...

2018-05-03 21:54:33

阅读数:12

评论数:0

Java基础提升篇:equals()与hashCode()方法详解

概述 java.lang.Object类中有两个非常重要的方法: public boolean equals(Object obj) public int hashCode() Object类是类继承结构的基础,所以是每一个类的父类。所有的对象,包括数组,都实现了在Object类中定义的...

2018-05-02 16:30:25

阅读数:14

评论数:0

Java提升篇——equals()方法和“==”运算符

equals() 超类Object中有这个equals()方法,该方法主要用于比较两个对象是否相等。该方法的源码如下: public boolean equals(Object obj) { return (this == obj); } 我们知道所有的对象都拥有标识(内...

2018-05-02 15:59:12

阅读数:17

评论数:0

Java提升篇:理解String 及 String.intern() 在实际中的应用

String的深入解析 首先String不属于8种基本数据类型,String是一个对象。     因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。 new String()和new String(“”)都是申明一个新的...

2018-05-02 11:50:47

阅读数:15

评论数:0

java基础提升篇:Static关键字

Static变量 static关键字 在类中用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时初始化,对于该类的所有对象来说,static成员变量只有一份。 可以通过引用或者类名访问静态成员   原来一个类里面的成员变量,每new一个对象,这个对象就有一份自...

2018-05-01 09:31:36

阅读数:20

评论数:0

Java提升篇:对象克隆(复制)

引论 假如说你想复制一个简单变量。很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short,float,double.long)同样适用于该类情况。 但是如果你复制...

2018-05-01 08:10:22

阅读数:21

评论数:0

solr异常--Expected mime type application/octet-stream but got text/html.

一、错误信息 Exception in thread "main" org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Expected mime type app...

2018-04-30 21:38:00

阅读数:23

评论数:0

Dubbo错误排查:com.alibaba.dubbo.rpc.RpcException: Invoke remote method timeout

一、错误信息 客户端错误: com.alibaba.dubbo.rpc.RpcException: Invoke remote method timeout. method: searchUser, provider: ... cause: Waiting server-side r...

2018-04-30 21:26:51

阅读数:46

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭