自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 2021-06-15

##多线程1.线程的创建方式集成Thread,重写Run方法实现runnable接口,重写run方法实现callable接口,重写call方法,相对于runnable,可以声明返回值类型区别1.Thread方式,最为简单,可以通过this获取当前线程,但是因为继承了Thread类,就不能在继承其他类了2.Runnbale方式.,子类实现这个接口,可以继承其他类,多个线程可以共享一个target对象,没有返回值3.callable方式,子类实现这个接口,可以继承其他的类,读个线程可以共享同一.

2021-06-15 20:16:40 88

原创 2021-06-10

##GC垃圾回收器java堆内存呗划分为新生代和老年代两部分,新生代主要使用赋值和标记清除垃圾回收算法;老年代主要使用标记整理垃圾回收算法,因此java虚拟中针对新生代和老年代分别提供了多种不同的垃圾收集器serial垃圾收集器serial是最基本垃圾收集器,使用复制算法,曾经是jdk1.3.1之前新生代唯一的垃圾收集器.serial是一个单线程的收集器,它不但只会使用一个CPU会一条线程去完成垃圾收集工作,并且在进行垃圾收集的同事,必须暂停其他所有的工作线程,直到垃圾收集结束serial垃.

2021-06-10 19:00:27 59

原创 2021-06-07

阻塞IO模型最传统的一种io模型,即在读写数据过程中会发生阻塞现象,当用户线程发出io请求之后,内核会去查看数据是否就绪,如果没有就绪就会等待数据就绪.而用户会等待数据就绪,而用户线程就会处于阻塞状态,用户线程交出CPU.当数据就绪之后,内核会将数据拷贝到用户线程,并返回结果给用户线程,用户线程才接触block状态##非阻塞io模型当用用户发起一个read操作后,并不需要等待,而是马上就得到一个结果,如果结果是一个而日日时,他就知道数据还没有准备好,于是他可以再次发送read操作,一旦内核中的数.

2021-06-07 20:44:26 73

原创 2021-06-03

数据结构栈(stack)栈是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫栈顶(top).它是后进先出(LIOF)的,对栈的基本操作只有push(进栈)和pop(出栈)两种,前者相当于插入,后者相当于删除最后的元素队列队列是一种特殊的线性表,特殊之处在于他之允许在表的前端进行删除操作,在表的后端进行插入操作,和栈一样,队列是一种操作受限制的线性表,进行插入操作的段成为队尾,进行删除操作的端成为对头链表链表是一种数据结构,和数组同级,比如java中我们使用ArrayList实现原.

2021-06-03 19:26:35 52

原创 2021-06-01

> java集合接胡存放在java.util包中,主要有3种:set list map1.collection:collection是集合list set queue的最基本的接口2.Iterator:迭代器,可以通过迭代器遍历集合中的数据3.Mao:是映射表的基础接口java的List集合是非常常用的数据类型,List是有序的Collectionjava List一共三个实现类,分别是:ArrayList Vector LinkedListArrayList(数组).

2021-06-02 19:25:28 36

原创 2021-06-01

屏幕适配 Gradle抽取> 屏幕适配1.平时写布局注意的问题2.全局适配的方案3.实际开发中遇到的一些特殊适配问题因为Android技术是开元的,碎片化问题比较严重,所以应用的对不同分辨率的手机进行适配,那我在平时开发过程中,首先布局编写时,通过权重,匹配屏幕或包裹内容来实现View的自适应,当然好多view的宽高是切图中规定死的,那么对于这些写死的宽高,在不同设备中就会出现比例拉伸的情况,所以以前项目当中,一般会通过最小宽高适配来实现不同机型的屏幕适配.原理介绍:其实适配的主要问题

2021-06-01 18:52:06 88

原创 2021-05-31

> gc垃圾回收期1.什么时候出发gc:手动触发:当前程序去调用System.gc().注意:GC回收的时候程序会停止运行同时回收的过程中,会消耗大量的系统性能,所以,一般情况下我们不会主动的去调用gc回收方法自动出发:根据Eden区和FromSpace区的内存大小来决定,当内存大小不足时,则会启动GC线程并停止应用线程程序在申请内存的时候,系统(JVM)发型呢内存不足,这个时候就会出发GC2.GC回收算法标记清楚分为两个步骤,第一个步骤就是标记,也就是标记所有标记需要回收的对象,这种

2021-05-31 17:02:11 59

原创 Handler

Handler的作用因为android中,主线程不建议做耗时的操作.子线程不建议更新UI,但android开发,其实就是搭建好页面,.将服务器的数据到页面上,所以我网络请求使用会非常平频繁,而网络请求属于耗时操作,需要放到子线程完成,但是一般情况下也不会通过子线程更新UI,所有一般会使用到handlerHandler的执行流程首先handler作为任务执行者,一般创建在主线程,当子线程有需要发送的数据,用过message对象,使用handler对象将消息发送到messagequeue,massageq

2021-05-28 19:13:38 49

原创 java多线程

多线程1,线程的创建方式(重点)集成thread,重写run方法实现runnable接口,重写run方法实现callable接口,重写call方法,相对runnable,可以声明返回类型区别:(次重点)1,thread方式,最为简单,可以通过this获取当前线程,但是因为继承了thread类,不能在继承其他类了2,runnable方式,子类实现这个接口,可以继承其他的类,多个线程可以共享同一个target对象,没有返回值3,callable方式,子类实现这个接口,可以继承其他的类,多个线程

2021-05-27 19:32:43 73

原创 kotlin的基本使用

kotlin用于android开发使用kotlin进行android开发:代码更少,可读性强,花费更少的时间来编写代码与理解其他人编写的代码 kotlin不仅仅是语言,也是一个强大的工具.并且他还在一直发展.目前kotlin已经完美的集成到android studio中,并且许多公司也积极的使用kotlin进行android应用开发 与java的互操作性,kotlin可以在程序中将kotlin与java变成语言一起使用,而且不需要将所有代码迁移到kotlin 支持多平台开发,不仅可以使用k.

2021-05-26 19:47:32 464

原创 使用JSONObject与JSONArray进行解析json数据

JSONObject:JSONObject只是一种数据结构,可以理解为JSON格式的数据结构(key-value结构),可以使用put方法给json对象添加元素。JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。JSONArray:JSONArray是一个有序的值序列。它的外部文本形式是一个用方括号括起来的字符串,用逗号分隔值。内部表单是具有索引的对象get和opt用于通过索引访问值的element方法,以及用于添加或替换值的方法..

2021-05-25 20:04:59 1262 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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