- 博客(75)
- 资源 (20)
- 收藏
- 关注
原创 Service中onStartCommand返回值
Service中onStartCommand返回值1.START_STICKY表示Service运行的进程被Android系统强制杀掉之后,Android系统会将该Service依然设置为started状态(即运行状态),但是不再保存onStartCommand方法传入的intent对象,然后Android系统会尝试再次重新创建该Service,并执行onStartCommand回调方法,但是onStartCommand回调方法的Intent参数为null,也就是onStartCommand方法虽.
2021-04-08 13:35:12 466
原创 android aidl(android studio)
1.aidl service端1)创建aidl文件New--->AIDL--->AIDL file就会生成一个IPerson.aidl文件// IPerson.aidlpackage com.example.aidlserverdemo;// Declare any non-default types here with import statementsinterface IPerson { void setAge(int age); .
2020-07-02 09:58:28 607
转载 Java static关键字
在一篇文章里面描述的很详尽了:https://baijiahao.baidu.com/s?id=1636927461989417537&wfr=spider&for=pc自己补充一个图:总结一句话:静态只能访问静态,非静态既能访问非静态,也能访问静态。...
2020-04-28 16:22:34 177
原创 Java面试
1、 public static void main(String[] args) { String s1 = "uml"; String s2 = "uml"; String s3 = new String("uml"); String s4 = new String("uml"); System.ou...
2020-04-26 14:02:24 256
原创 方法重载&方法重写
1、方法重载被重载的方法必须改变参数列表(参数个数或类型或顺序不一样); 被重载的方法可以改变返回类型; 被重载的方法可以改变访问修饰符; 被重载的方法可以声明新的或更广的检查异常; 方法能够在同一个类中或者在一个子类中被重载。 无法以返回值类型作为重载函数的区分标准。 protected void fun(int a) { } protected vo...
2020-04-26 11:13:38 534
原创 java代码执行顺序
1、ParentClass.javapackage test17;public class ParentClass { static int aa = 3; private int bb = 10; static { System.out.println("父类中的静态代码块"); } public ParentClass(...
2020-04-26 10:34:01 104
原创 Java内省(Introspector)
1、 public static void main(String[] args) throws Exception { ReflectPoint pt1 = new ReflectPoint(3, 5); String propertyName = "x"; PropertyDescriptor pd = new PropertyDe...
2020-04-25 18:22:11 137
原创 java反射(数组的反射)
1、 int[] a1 = new int[]{1, 2, 3}; int[] a2 = new int[4]; int[][] a3 = new int[2][3]; String[] a4 = new String[]{"a", "b", "c"}; System.out.println(a1.getClass...
2020-04-24 21:51:24 131
原创 java反射(Constructor类、Field、Method类)
反射就是把Java类中的各种成分映射成相应的java类。一个class代表一份字节码,那么一个method代表这个字节码中的一个方法,一个Constructor代表字节码中的构造方法。1、Constructor类1)得到某个类所有的构造方法Constructor[] constructors = Class.forName("java.lang.String").getC...
2020-04-23 23:00:25 230
原创 java反射(一)
1、如何得到各个字节码对应的实例对象(Class类型)1)类名.class 例如:System.class2)对象.getClass() 例如:new Date().getClass()3)Class.forName("类名") 例如:Class.forName("java.util.Date")2、8种基本类型:boolean, byte, cha...
2020-04-23 21:29:45 112
转载 DataBiding
转载连接,看完了运行一下demo,基本上就了解了!DataBinding系列(一):DataBinding初认识https://www.jianshu.com/p/53925ccb900eDataBinding系列(二):DataBinding的基本用法https://www.jianshu.com/p/70316eb4e0f8DataBinding系列(三):...
2020-04-14 16:29:07 216
原创 Okhttp之FormBody
FormBody继承抽象类RequestBody它的MediaType是一个静态常亮 private static final MediaType CONTENT_TYPE = MediaType.get("application/x-www-form-urlencoded");里面还有一个内部类Builder public static final class Builder...
2020-04-10 15:59:21 7185
原创 okhttp之RequestBody
Okhttp里面RequestBody是一个抽象类抽象方法有:1)public abstract @Nullable MediaType contentType();2)public abstract void writeTo(BufferedSink sink) throws IOException;非抽象方法:1) public long contentLeng...
2020-04-10 15:45:28 7795
原创 android handler原理
Handler的构造函数:1、 public Handler() { this(null, false); }2、 public Handler(@Nullable Callback callback) { this(callback, false); }3、 public Handle...
2020-04-09 11:15:01 118
原创 java final
1、当用final去修饰一个类的时候,表示这个类不能被继承public final class FinalClass { private int a = 10; private final int b = 20; private void fun() { } private final void fun1() { }}...
2020-04-07 15:15:47 135
原创 子类与父类方法调用关系
1、public class A { public void fun(){ System.out.println("A类中的方法"); }}public class B extends A { public void fun() { System.out.println("B类中的方法"); }}pub...
2020-04-07 14:51:10 249
原创 子类和父类的构造函数
1、public class A { public A() { System.out.println("A类的无参构造函数"); } public A(int a) { System.out.println("A类的有参构造函数"); }}public class B extends A { public ...
2020-04-07 14:44:05 538
原创 抽象类和接口
public class Aclass {}public interface jiekou1 { void fun1(); void fun2();}public interface jiekou2 { void fun3(); void fun4();}public interface jiekou3 { void f...
2020-04-07 14:28:19 114
原创 java线程池的使用
1、newCachedThreadPool()创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程 /** * 1.创建一个可缓存的线程池。如果线程池的大小超过了处理任务所需要的线程,那么就会回收部分空闲(60秒不执行任务)的线程 * 2.当任务数增加时,此线程池又可以智能的添加新线程来处理任务 * 3.此线程池不会...
2020-04-02 15:00:57 92
原创 java线程池
类图关系:图解:ThreadPoolExecutor继承抽象类AbstractExecutorService,AbstractExecutorService又实现了接口ExecutorService,其中ExecutorService里面有很多方法,ExecutorService实现了接口Executor,Executor接口中只含有一个方法execute(Runnable command...
2020-04-02 13:42:19 139
原创 okhttp原理(Okhttp-3.12.0)
一、原理图二、图解说明(1)创建OkHttpClient对象okHttpClient,对应上图标记(1)okHttpClient = new OkHttpClient.Builder()//构建器 .connectTimeout(10, TimeUnit.SECONDS)//连接超时 ...
2020-04-02 10:01:28 1347 1
原创 JAVA反射
1、JAVA的反射机制是在运行状态中2、在运行时判断一个对象所属的类,调用任意一个对象的方法;在运行时构造任意一个类的对象,判断任意一个类所有的成员变量和方法。(要想解剖一个类,必须先要获取到该类的字节码文件对象(class)。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.)3、Person.javapackage com.e...
2020-03-31 13:43:24 83
转载 AIDL基本使用
一、AIDL基本概念AIDL定义:个人理解就是Android开发中提供的一种快速实现binder的工具,而binder就是一种跨进程通信,也可以不用AIDL,自己实现binder来达到同样的效果AIDL支持的基本类型 : String,int,long,boolean,float,double,ArrayList,HashMap,Parcelable二、使用1、先定义一个IPer...
2020-03-31 13:43:06 259
原创 Java运行时数据区
Java运行时数据区: 1、程序计数器:指向当前线程正在执行的字节码指令。线程私有的。2、虚拟机栈:虚拟机栈是Java执行方法的内存模型。每个方法被执行的时候,都会创建一个栈帧,把栈帧压人栈,当方法正常返回或者抛出未捕获的异常时,栈帧就会出栈。(1)栈帧:栈帧存储方法的相关信息,包含局部...
2020-03-27 09:30:47 192
原创 dart学习(dart接口)
1、类和接口是统一的,类就是接口2、每个类都隐式的定义了一个包含所有实例成员的接口3、如果是复用已有类的实现,使用继承(extends)4、如果是使用已有类的外在行为,使用接口(implements)void main() { var student = new Student(); student.run();}class Person { String na...
2020-02-29 22:31:54 710
原创 dart学习(dart中的抽象类)
1、抽象类使用abstract表示,不能直接被实例化2、抽象方法不用abstarct修饰,无实现3、抽象类可以没有抽象方法4、有抽象方法的类一定得声明为抽象类void main() { var student = new Student(); student.run();}abstract class Person { void run();}class ...
2020-02-29 22:20:51 706
原创 dart学习(继承中的构造方法)
1、子类的构造方法默认会调用父类的无名无参构造方法void main(){ var student = new Student();}class Person{ String name; Person(){ print("Person..."); }}class Student extends Person{ int age;}运行结果:Pe...
2020-02-29 22:10:45 1545
原创 dart学习(继承)
1、使用关键字extends继承一个类2、子类会继承父类课件的属性和方法,不会继承构造方法3、子类能够复写父类的方法、getter和setter4、单继承、多态性1)person.dartclass Person { String name; int age; String _birthday; bool get isAdult => age >...
2020-02-29 21:44:03 148
原创 dart学习(对象call方法)
1、如果类实现了call()方法,则该类的对象可以作为方法使用void main() { Person person = new Person(); person.name = "Tom"; person.age = 10; var result = person("Test", 20); print("result===>$result");}class ...
2020-02-29 21:12:16 723
原创 dart学习(对象操作符)
1)条件运算符 ?.void main() { Person person = new Person(); person?.work();}class Person { String name; int age; void work() { print("Work..."); }}运行结果:Work...2)类型转换:asvoid m...
2020-02-29 21:03:05 176
原创 dart学习(初始化列表、静态成员)
1、初始化列表1)初始化列表会在构造方法体执行之前2)使用逗号分隔初始化表达式3)初始化列表常用于设置final变量的值Person.withMap(Map map): name = map["name"], gender = map["gender"] { this.age = map["age"]; }2、静态成员1)使用static关键字来实现类级别的变...
2020-02-29 20:50:08 1384
原创 Java设计模式(装饰者模式)
1、UML类图如下2、Decorator.javapackage com.company.decorator;public interface Decorator { void show();}3、Person.javapackage com.company.decorator;public class Person implements Decorato...
2020-02-29 19:01:50 135
原创 dart学习(构造方法)
1、如果没有自定义构造方法,则会有个默认的构造方法2、如果存在自定义构造方法,则默认构造方法无效3、构造方法不能重载void main() { var person = new Person("Tom", 20, "Male");}class Person { String name; int age; final String gender; //1....
2020-02-29 05:05:17 403
原创 dart学习(面向对象)
1、类和对象1)使用关键字class声明一个类2)使用关键字new创建一个对象,new可省略3)所有对象都继承于Object类2、属性和方法1)属性默认生成getter和setter方法2)使用final声明的属性只有getter方法(只读)3)属性和方法通过.访问4)方法不能被重载void main() { var person = new Per...
2020-02-29 04:16:30 163
原创 Java设计模式(抽象工厂模式)
1、Car.javapackage com.company.factory.abstractFactory;public abstract class Car { }abstract class Audi extends Car{}abstract class BMW extends Car{}class AudiCar extends Audi implements Jiao...
2020-02-28 21:00:37 120
原创 Java设计模式(工厂方法模式)
1、Car.javapackage com.company.factory.factoryMode;public abstract class Car {}class BMWCar extends Car {}class Audi extends Car {}2、定义一个接口Factorypackage com.company.factory.factoryMod...
2020-02-28 20:30:13 95
原创 Java设计模式(简单工厂模式)
1、Car.javapackage com.company.factory.simpleFactory;public class Car {}class Audi extends Car{}class BMW extends Car{}2、Factory.javapackage com.company.factory.simpleFactory;public cla...
2020-02-28 20:06:43 79
原创 Java设计模式(适配器模式)
1、需要2个接口1)TypeC.javapackage com.company.adapter;public interface TypeC { String getInfo();}2)USB.javapackage com.company.adapter;public interface USB { String getInfo();}2、...
2020-02-28 17:55:33 78
原创 Rxjava学习(组合Observable)
Combining Observables(组合Observable)1、Zip通过一个函数将多个Observables的发射物结合到一起,基于这个函数的结果为每个结合体发 射单个数据项。Zip 操作符返回一个Obversable,它使用这个函数按顺序结合两个或多个Observables发射 的数据项,然后它发射这个函数返回的结果。它按照严格的顺序应用这个函数。它只发射与 发射数据项最...
2020-02-26 20:46:39 340
原创 Rxjava学习(过滤Observable)
Filtering Observables(过滤Observable)1、Debounce仅在过了一段指定的时间还没发射数据时才发射一个数据 //仅在过了一段指定的时间还没发射数据时才发射一个数据 Observable.create(new Observable.OnSubscribe<Integer>() { @Overrid...
2020-02-26 20:25:47 291
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人