- 博客(16)
- 收藏
- 关注
原创 Android数据存储:一句话让你永远会用
数据存储分类:sharePreference存储 文件存储 数据库存储SQLite数据库 数据共享contentProvider本文对 “文件存储” 展开。背景:2022年,不考虑外置sd卡。文件存储分类:内部存储 外部存储。内部存储:手机文件管理器里看不见,通过Android Studio可看到Device File Explore可查看;这里面有:data/data/包名/share-prefs...
2022-04-19 17:52:37 2121
原创 ObjectAnimator.ofFloat动画
ObjectAnimator animator = ObjectAnimator.ofFloat(tv, "translationX", 200).animator.setDuration(500).start(); float translationX :表示在 X 轴上的平移距离,以当前控件为原点,向右为正方向,参数 translationX 表示移动的距离。float translationY :表示在 Y 轴上的平移距离,以当前控件为原点,向下为正方向,参数 translationY 表示移.
2020-06-04 17:17:34 7322
原创 canvas.save(Canvas.ALL_SAVE_FLAG)
更新gradle新版本后,canvas.save(Canvas.ALL_SAVE_FLAG)报错;修改方法:改为canvas.save();
2020-05-22 10:35:07 1113
转载 什么是反射机制?
定义反射机制是Java语言中一个非常重要的特性,它允许程序在运行时进行自我检查,同时也允许其对内部成员进行操作。由于反射机制能够实现在运行时对类进行装载,因此能够增加程序的灵活性,但是不恰当地使用反射机制,也会严重影响系统的性能。具体而言,反射机制的主要功能主要有:①得到一个对象所属的类,②获取一个类的所有成员变量和方法,③在运行时创建对象,调用对象的方法。反射机制的作用:1,反编译:....
2020-01-23 11:33:55 140
原创 反射机制反编译类
反编译类中的属性import java.lang.reflect.Field;import java.lang.reflect.Modifier;public class Main { public static void main(String[] args) { //获取到整个类 Class c2 = Student.class; ...
2020-01-23 10:15:12 152
原创 反射机制+IO+Properties联合应用,动态创建Java对象
反射机制+IO+Properties联合应用,动态创建Java对象package com.company;import java.io.FileReader;import java.util.Properties;public class Main { public static void main(String[] args) throws Exception{...
2020-01-22 17:11:05 180
原创 Java反射机制中的三种获取类方式
获取Class类型对象的三种方式: 第一种方式 Class c1 = Class.forName("Student"); //Student代表Student整个类. // 该方法需要处理异常在此贴上forName()方法的源代码package java.lang;...@CallerSensitivepublic static Class<?> fo...
2020-01-22 10:07:01 193
原创 手写一个简单死锁
手写一个简单死锁:思路:2个线程、2个对象锁。当线程t1锁住对象o1后,打算去锁o2;与此同时,线程t2锁住了o2,打算去锁o1。这时就产生了死锁。/** * * 手写一个死锁 * @author tijian.zhou * 当线程t1锁住对象o1后,打算去锁o2,与此同时,线程t2锁住了对象o2,打算去锁o1,这时就产生了死锁 */public class DeadL...
2020-01-16 11:10:56 251
原创 关于sleep()方法的基础理解
/** * 关于Thread.Sleep()方法的经典题目 * @author tijian.zhou * */public class ThreadTest03 { public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(new proce...
2020-01-15 15:11:15 274
转载 AndroidStudio的版本回退操作
一、android studio上部VCS > Git > Reset HEAD二、选择Reset Type注释:Reset Typegit reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到i...
2019-10-30 20:58:07 4577
原创 Java线程的生命周期
Java线程共有五个生命周期:新建、就绪、运行、阻塞、消亡一、新建状态:当new一个线程时,表示该线程已新建二、就绪状态:线程新建之后,调用start方法表示该线程进入就绪状态;就绪状态的线程有权利去抢夺获取CPU的时间片,时间片就是执行权,当线程拿到CPU时间片之后就马上执行run方法,这个时候就表示进入了运行状态。三、运行状态:run方法的执行表示着该状态...
2019-10-27 20:54:04 114
原创 Java中线程的学习
在Java语言中实现线程的第一种方式:/** * * 在Java中实现线程的第一种方式: * 继承java.lang.Thread * 重写run方法 * * 启动线程: * * 创建线程 new --> 启动线程 start方法 * */public class ThreadTest01 { public static void main...
2019-10-27 20:19:19 87
原创 集合的理解
集合只能存储引用数据类型,不能直接存储基本数据类型(可以将int转换为Integer类型);集合的查询效率取决于数据在内存中存储的规律性,如:数组的存储的所有数据,其数据类型都是一样的,所以每个数据占用位相同,所以在内存中存储是有规律的,所以数组查询效率较高;链表中的数据在内存空间上存储是没有规律的,查询数据时只能从第一个节点往后挨个查询,所以查询效率较低。链表的增删效率比较高,是因为...
2019-10-24 20:28:50 112
原创 MarkDown基本语法总结
MarkDown基本语法总结二级标题无序列表这是无序列表1这是无序列表2这是无序列表3有序列表这是有序列表1这是有序列表2这是有序列表3链接和图片这是百度链接引用“海内存知己,天涯若比邻”粗体与斜体这是粗体这是斜体这是粗斜体代码hello world表格狗猫鼠兔1234白黑红绿...
2019-06-28 11:43:35 79
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人