Java基础
AFinalStone
这个作者很懒,什么都没留下…
展开
-
教你如何使用协程(七)协程挂起
原文地址:https://www.bennyhuo.com/2019/05/07/coroutine-suspend/#more原创 2019-11-28 11:31:31 · 799 阅读 · 0 评论 -
教你如何使用协程(七)协程的取消
原文地址:https://www.bennyhuo.com/2019/04/30/coroutine-cancellation/原创 2019-11-28 11:30:11 · 537 阅读 · 0 评论 -
教你如何使用协程(六)协程的异常处理
原文地址:https://www.bennyhuo.com/2019/04/23/coroutine-exceptions/异步代码的异常处理通常都比较让人头疼,而协程则再一次展现了它的威力。引子我们在前面一篇文章当中提到了这样一个例子:typealias Callback = (User) -> Unitfun getUser(callback: Callback){ ...原创 2019-11-28 11:26:18 · 1625 阅读 · 0 评论 -
教你如何使用协程(四)协程+Kotlin+ Retrofit实现网络请求
原文地址:https://www.bennyhuo.com/2019/04/01/basic-coroutines/#more>接触新概念,最好的办法就是先整体看个大概,再回过头来细细品味### 需求确认在开始讲解本文之前,我们需要先确认几件事儿:1. 你用过线程对吧?2. 你写过回调对吧?3. 你用过 RxJava 类似的框架吗?原创 2019-11-21 20:38:28 · 2972 阅读 · 2 评论 -
教你如何使用协程(三)协程的启动模式
原文地址:https://www.bennyhuo.com/2019/04/01/basic-coroutines/#more1.引子上一篇通过漫画的方式简单带大家认识了协程,本篇进一步继续带大家认识协程。2.需求确认在开始讲解协程之前,我们需要先确认几件事儿:你用过线程对吧?你写过回调对吧?你用过 RxJava 类似的框架吗?看下你的答案:1、如果上面的问题的回答都是 ...原创 2019-11-21 19:20:49 · 1104 阅读 · 0 评论 -
教你如何使用协程(一)用漫画告诉你什么是协程?
https://www.bennyhuo.com/2019/04/01/basic-coroutines/http://www.cocoachina.com/articles/28834原创 2019-11-07 20:04:50 · 664 阅读 · 0 评论 -
JAVA集合知识点汇总 - 前言
一、数据结构1.研究和解决什么问题? 一堆数据怎么在内存中存储更方便、更高效2.数据在内存中不一定都是挨着连续存储的3.例如公司,党派,帮派;每个都有自己的组织模式和运行机构来帮助他们正常发展和运行。4.常见的数据结构: 线性表(list) 链表(linked list) 栈(stack) 队列(queue) 树(tree)5.list,线性表 分三种 名称 介绍原创 2017-08-23 17:31:29 · 448 阅读 · 0 评论 -
JAVA集合知识点汇总<三> Map集合
一、Map接口Map是比较特殊的集合,也叫映射,它一次存储两个数据(一个键值对,Entry)。键(key)和值(value)可以是任何类型,键不允许重复,值允许重复。 一个键有且只能对应一个值,键和值的类型可以不一样。Map二、 特点Map集合存储的是键值对,其中键要求唯一。Map集合的键对应一个值,值不要求唯一,但是一个键不能对应对个值。Map集合没有Iterator迭代器,如果需要迭代需要转化原创 2017-08-23 17:59:54 · 484 阅读 · 0 评论 -
JAVA集合知识点汇总<二> Set集合
一、Set接口1.父接口 Collection2.特点 唯一 无序(插入顺序跟遍历顺序不一致,没下标)唯一:Set集合中不允许出现重复的元素,如果向Set集合中存储重复的元素是无效的,但不会报错无序:Set集合不会维护集合中元素的插入顺序,即不存在下标或索引3.Set接口中的功能方法 (Set接口中没有自有方法,全部继承自Collection接口)4.凡是带有下标的方法都不支持二、原创 2017-08-23 17:59:24 · 496 阅读 · 0 评论 -
JAVA集合知识点汇总<一> List集合
一、List接口1.Collection接口是List和Set接口的父类2.List 接口存储一组允许重复,有序(插入顺序)的对象,有下标,插入顺序作为遍历的顺序3.Set 接口存储一组唯一,无序的对象 没下标 插入的顺序跟遍历的顺序是不一样的4.List接口中的功能方法 List 接口存储一组允许重复,有序(插入顺序)的对象(包括null),可以通过索引(下标)来进行访问 作用原创 2017-08-23 17:58:40 · 5413 阅读 · 0 评论 -
Java多线程(下篇)
一、死锁1.同步锁 解决了线程安全问题,但会造成性能低下,还可能会引发一个问题(罕见):死锁2.例子a.一个地痞子死后,来到了地狱,到了吃饭的时候,他发现饭桌上面的饭菜非常丰盛,然后好多人围着一张大桌子,一起吃饭,饭菜都上齐了,非常美味, 他们非常饿,开吃吧…但是只有两支筷子,而且是两个人同时各拿一支筷子…如果没有人愿意共享自己的筷子,那么他们就只能饿着…看着…馋着…留着口水.煎熬着…b.爸爸说:原创 2017-08-07 00:46:52 · 496 阅读 · 0 评论 -
Java多线程(上篇)
每一个分支都叫做一个线程,main()叫做主分支,也叫主线程。 程只是一个静态的概念,机器上的一个.class文件,机器上的一个.exe文件,这个叫做一个进程。程序的执行过程都是这样的:首先把程序的代码放到内存的代码区里面,代码放到代码区后并没有马上开始执行,但这时候说明了一个进程准备开始,进程已经产生了,但还没有开始执行,这就是进程,所以进程其实是一个静态的概念,它本身就不能动。平常所说的进程的原创 2017-08-07 00:43:41 · 569 阅读 · 0 评论 -
谈谈final、finally、finalize的区别
1.final:如果一个类被final修饰,意味着该类不能派生出新的子类,不能作为父类被继承。因此一个类不能被声明为abstract,又被声明为final。将变量或方法声明为final。可以保证他们在使用的时候不被改变。其初始化可以在两个地方:一是其定义的地方,也就是在final变量在定义的时候就对其赋值;二是在构造函数中。这两个地方只能选其中的一个,要么在定义的时候给值,要么在构造函数中给值。被声原创 2017-07-25 17:56:29 · 1453 阅读 · 1 评论 -
JavaIO 总结笔记<二> IO简介和File文件
个人博客、个人简书、gitHub主页简介:IO操作面临很多问题,信息量的巨大,网络的环境等等,因为IO不仅仅是对本地文件、目录的操作,有时对二进制流、还有一部分是网络方面的资源,所以多种原因直接造成IO操作无疑是耗时且复杂多变的。Java对IO的支持是个不断的演变过程,经过了很多的优化,直到JDK1.4以后,才趋于稳定,在JDK1.4中,加入了nio类,解决了很多性能问题,虽然我们有足够的理由不去原创 2017-06-29 19:36:59 · 467 阅读 · 0 评论 -
JavaIO 总结笔记<三> 基本字节字符输入输出流和文件复制
个人博客、个人简书、gitHub主页一、IO体系1.流主要分两大类:字节流 字符流2.在硬盘上的文件,都是以二进制字节形式存储的,所以不管啥文件,读写时都应该用字节流3.在java的早期版本中,的确只有字节流,没有字符流4.一个数字或字母占1个字节,一个汉字占了2个字节,而字节流一次读写1个字节,很容易产生中文乱码问题5.字符流专门用来读写文本类的文件,txt doc6.字节流适合用来原创 2017-06-29 19:38:29 · 682 阅读 · 0 评论 -
JavaIO 总结笔记<四> 缓冲流和转换流
个人博客、个人简书、gitHub主页一、缓冲流1.缓冲区 基本字节流没有缓冲区 基本字符流有缓冲区(8K)2.对于基本字节流,Java后来提供了字节流的缓冲流和字符流的缓冲流3.缓冲流java.io.BufferedInputStream 字节缓冲流(读)java.io.BufferedOutputStream 字节缓冲流(写)java.io.BufferedReader原创 2017-06-29 19:39:28 · 876 阅读 · 0 评论 -
JavaIO 总结笔记<五> 打印流、Properties类、对象流、序列化
个人博客、个人简书、gitHub主页一、打印流1.我们以前在写数据时,不管用什么流,都需要调用什么方法?write(int )write(byte[])write(char[])write(String)我想直接向文件中写入int数据、char数据、boolean数据、小数,怎么实现?我们之前学的write()方法在写数据时,对数据的类型是有限制的,一般都是先转换为String,然后就可以写原创 2017-06-29 19:42:43 · 517 阅读 · 0 评论 -
JavaIO 总结笔记<六> 另类IO观点概括
一、JAVA流式输入/输出原理原创 2017-06-30 09:35:44 · 774 阅读 · 0 评论 -
Java中的锁分类
在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下:公平锁/非公平锁可重入锁独享锁/共享锁互斥锁/读写锁乐观锁/悲观锁分段锁偏向锁/轻量级锁/重量级锁自旋锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。公平锁/非公平锁公平锁是指多个线程按照申请锁的顺序来转载 2017-08-09 12:53:41 · 416 阅读 · 0 评论 -
Java关键字static
1、static简单介绍static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创原创 2017-08-06 22:48:42 · 360 阅读 · 0 评论 -
浅谈引用<一> Java中的对象和对象引用
一、何谓对象?在Java中有一句比较流行的话,叫做“万物皆对象”,这是Java语言设计之初的理念之一。要理解什么是对象,需要跟类一起结合起来理解。下面这段话引自《Java编程思想》中的一段原话: “按照通俗的说法,每个对象都是某个类(class)的一个实例(instance),这里,‘类’就是‘类型’的同义词。” 从这一句话就可以理解到对象的本质,简而言之,它就是类的实例,比如所有的人统称为“人转载 2017-08-06 23:40:40 · 376 阅读 · 0 评论 -
浅谈引用<二> Java中引用的分类
一、Java引用介绍众所周知,Java中是JVM负责内存的分配和回收,这是它的优点(使用方便,程序不用再像使用c那样操心内存),但同时也是它的缺点(不够灵活)。为了解决内存操作不灵活这个问题,可以采用软引用等方法。在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及状态,程序才能使用它。这 就像在日常生活中,从商店购买了某样物品后,如果有原创 2017-08-06 23:51:21 · 671 阅读 · 0 评论 -
JavaIO 总结笔记<一> 概述
个人博客、个人简书、gitHub主页IO流的命名:FileInputStreamFileOutputStreamBufferedInputStreamBufferedOutputStreamFileReaderFileWriterBufferedReaderBufferWriterInputStreamReaderOutputStreamWriter一、File 详细描述:Jav原创 2017-06-29 19:31:51 · 354 阅读 · 0 评论