【Java练习 SDUT-2733_小鑫の日常系列故事(二)——石头剪子布】教程文章相关的互联网学习教程文章

Java多线程系列--“JUC线程池”04之 线程池原理(三)【代码】

转自:http://www.cnblogs.com/skywang12345/p/3509960.html 本章介绍线程池的生命周期。在"Java多线程系列--“基础篇”01之 基本概念"中,我们介绍过,线程有5种状态:新建状态,就绪状态,运行状态,阻塞状态,死亡状态。线程池也有5种状态;然而,线程池不同于线程,线程池的5种状态是:Running, SHUTDOWN, STOP, TIDYING, TERMINATED。 线程池状态定义代码如下:private final AtomicInteger ctl = new AtomicInteger(ctlOf(RU...

Java多线程系列--“JUC线程池”03之 线程池原理(二)【代码】【图】

转自:http://www.cnblogs.com/skywang12345/p/3509954.html 概要 在前面一章"Java多线程系列--“JUC线程池”02之 线程池原理(一)"中介绍了线程池的数据结构,本章会通过分析线程池的源码,对线程池进行说明。内容包括:线程池示例 参考代码(基于JDK1.7.0_40) 线程池源码分析 (一) 创建“线程池” (二) 添加任务到“线程池” (三) 关闭“线程池”转载请注明出处:http://www.cnblogs.com/skywang12345/p/3509954.html ...

Java多线程系列--“JUC线程池”02之 线程池原理(一)【代码】【图】

转自:https://www.cnblogs.com/skywang12345/p/3509941.html 概要 在上一章"Java多线程系列--“JUC线程池”01之 线程池架构"中,我们了解了线程池的架构。线程池的实现类是ThreadPoolExecutor类。本章,我们通过分析ThreadPoolExecutor类,来了解线程池的原理。内容包括:ThreadPoolExecutor简介 ThreadPoolExecutor数据结构 线程池调度转载请注明出处:http://www.cnblogs.com/skywang12345/p/3509941.html ThreadPoolExecutor...

Java多线程系列--“JUC线程池”01之 线程池架构【代码】【图】

转自:http://www.cnblogs.com/skywang12345/p/3509903.html 概要 前面分别介绍了"Java多线程基础"、"JUC原子类"和"JUC锁"。本章介绍JUC的最后一部分的内容——线程池。内容包括:线程池架构图 线程池示例转载请注明出处:http://www.cnblogs.com/skywang12345/p/3509903.html 线程池架构图 线程池的架构图如下: 1. Executor 它是"执行者"接口,它是来执行任务的。准确的说,Executor提供了execute()接口来执行已提交的 Runn...

Java多线程系列--“JUC线程池”06之 Callable和Future【代码】

转自:http://www.cnblogs.com/skywang12345/p/3544116.html 概要 本章介绍线程池中的Callable和Future。Callable 和 Future 简介 示例和源码分析(基于JDK1.7.0_40)转载请注明出处:http://www.cnblogs.com/skywang12345/p/3544116.html Callable 和 Future 简介Callable 和 Future 是比较有趣的一对组合。当我们需要获取线程的执行结果时,就需要用到它们。Callable用于产生结果,Future用于获取结果。 1. Callable Callable 是...

Java多线程系列--“JUC线程池”05之 线程池原理(四)【代码】

转自:http://www.cnblogs.com/skywang12345/p/3512947.html 概要 本章介绍线程池的拒绝策略。内容包括:拒绝策略介绍 拒绝策略对比和示例转载请注明出处:http://www.cnblogs.com/skywang12345/p/3512947.html 拒绝策略介绍 线程池的拒绝策略,是指当任务添加到线程池中被拒绝,而采取的处理措施。当任务添加到线程池中之所以被拒绝,可能是由于:第一,线程池异常关闭。第二,任务数量超过线程池的最大限制。 线程池共包括4种拒...

软件测试系列之Java Selenium3自动化测试

一.背景和目的 我大概是2015年开始接触Selenium这个web自动化测试框架。当时是selenium2.48好像,从Selenium2.0开始,就加入了webdriver,实际上,我们说的selenium自动化测试,大部分情况都是在使用webdriver的API。现在去Selenium官网,发现最新Selenium版本是3.4,我也不知道3.4和2.48之间有什么多大的区别和新的特性,唯一确定的是,在Selenium2.0的时候,启动后firefox的时候,还不需要额外的driver插件支持,现在到Se...

Java入门系列-24-实现网络通信

互联网上那么多设备,java 是如何与其他设备通信的呢?这次的内容是网络通信的基础,有了它咱们才能上网页、玩游戏、视频聊天。 Socket 客户端套接字 Socket 客户端套接字,用于连接互联网提供服务的设备。 Socket 构造方法构造方法 说明Socket() 通过系统默认类型的 SocketImpl 创建未连接套接字Socket(String host, int port) 创建一个流套接字并将其连接到指定主机上的指定端口号常用方法方法名称 说明getOutputStream() 返回此...

Java多线程系列---“基础篇”03之 Thread中start()和run()的区别【代码】

转自:https://www.cnblogs.com/skywang12345/p/3479083.html (含部分修改) 概要 Thread类包含start()和run()方法,它们的区别是什么?本章将对此作出解答。本章内容包括:start() 和 run()的区别说明 start() 和 run()的区别示例 start() 和 run()相关源码(基于JDK1.7.0_40)一. start() 和 run()的区别说明 start() : 它的作用是启动一个新线程,新线程会执行相应的run()方法。start()不能被重复调用(否则抛出异常)。 Myno...

Java多线程系列---“基础篇”02之 常用的实现多线程的两种方式【代码】

转自:https://www.cnblogs.com/skywang12345/p/3479063.html (含部分修改) 概要 本章,我们学习“常用的实现多线程的2种方式”:Thread 和 Runnable。(比如还有Callable来实现)之所以说是常用的,是因为还可以通过java.util.concurrent包中的线程池来实现多线程。关于线程池的内容,我们以后会详细介绍;现在,先对Thread和Runnable进行了解。本章内容包括:Thread和Runnable的简介 Thread和Runnable的异同点 Thread和Runnabl...

Java入门系列-21-多线程【图】

什么是线程 在操作系统中,一个应用程序的执行实例就是进程,进程有独立的内存空间和系统资源,在任务管理器中可以看到进程。 线程是CPU调度和分派的基本单位,也是进程中执行运算的最小单位,可完成一个独立的顺序控制流程,当然一个进程中可以有多个线程。 多线程:一个进程中同时运行了多个线程,每个线程用来完成不同的工作。多个线程交替占用CPU资源,并非真正的并行执行。 使用多线程能充分利用CPU的资源,简化编程模型,带来...

Java入门系列-19-泛型集合

集合 如何存储每天的新闻信息?每天的新闻总数是不固定的,太少浪费空间,太多空间不足。 如果并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象,可以使用Java集合框架。 Java 集合框架提供了一套性能优良、使用方便的接口和类,位于 java.util 包中。 接口 Collection 存储一组不唯一,无序的对象,它有两个子接口 List和Set。List 接口存储一组不唯一,有序(插入顺序)的对象。Set 接口存储一组唯一,无序的对象。 ...

Java入门系列-19-泛型集合【代码】

集合 如何存储每天的新闻信息?每天的新闻总数是不固定的,太少浪费空间,太多空间不足。 如果并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象,可以使用Java集合框架。 Java 集合框架提供了一套性能优良、使用方便的接口和类,位于 java.util 包中。 接口 Collection 存储一组不唯一,无序的对象,它有两个子接口 List和Set。List 接口存储一组不唯一,有序(插入顺序)的对象。Set 接口存储一组唯一,无序的对象。 ...

Java开发公众号系列教程(一):微信js-sdk上传手机相册照片兼容IOS和安卓设备【图】

很多开发者朋友在进行微信公众号开发时,遇到微信js-sdk上传手机相册照片时IOS设备无法正常预览的情况,今天笔者结合多多年的开发经验,把兼容IOS的解决方案分享给广大微信开发者朋友。微信最新版本JSSDK文档 地址https://mp.weixin.qq.com/advanced/wiki?t=t=resource/res_main&id=mp1421141115 一、首先申明一点笔者本案例用的微信JSSDK版本是1.2.0的,官方文档给出的最新的1.4.0亲测暂时不能用。 二、微信js-sdk的chooseImage A...

Java入门系列-16-继承

这一篇文章教给新手学会使用继承,及理解继承的概念。掌握访问修饰符、掌握 final 关键字的用法。 继承 为什么要使用继承 首先我们先看一下这两个类: public class Teacher {private int teachingAge;private String name;private int age;public void teach() {}public void seyHi() {System.out.println("我是:"+this.name);} } public class Student {private int studentNo;private String name;private int age;public void...