原创 Kotlin單例寫法
Java 單例的寫法 public class Single { private static Single sInstance = null; private Single() { } pu
原创 變量var和常量val以及懶加載
// const 聲明的在編譯時就已知道值,類似C中的宏 // const 修飾的可以寫在類的最外層,或者companion object中 const val constStr:String = "134" class Tes
原创 Kotlin回調寫法
接口聲明 public interface CallBack { void onCallBack(); } Java回調寫法 public class TestJava { public void setCal
原创 Kotlin判空
Java判空 public class TestJava { public void test(String data) { if (data != null) { Log.d("T
原创 RxJava在網絡請求中的應用
利用RxJava實現串行請求 class Serial { class Student constructor(var id: Int) { } fun request1(): Observable<St
原创 常用編譯tips
常用編譯tips1.INSTALL_FAILED_TEST_ONLY2.jcenter倉庫慢3.支持java8 1.INSTALL_FAILED_TEST_ONLY 在項目中的gradle.properties中設置: andro
原创 ThreadLocal源碼
threadlocal機制的實現與thread和threadlocalmap密不可分 ThreadLocalMap ThreadLocalMap是ThreadLocal的靜態內部類,內部由數組實現,默認大小16 private s
原创 is關鍵字用法
open class Parent { fun hello():Boolean { return true } } class Son : Parent() { } fun main(arr
原创 Mac+anaconda3+eclipse+opencv4編譯環境
Mac+anaconda3+eclipse+opencv4編譯環境 版本 anaconda3:Anaconda3-5.3.0-MacOSX-x86_64.pkg(對應python3.7) opencv4.0.0:https://g
原创 Kotlin 靜態常量寫法
Java靜態常量寫法 public class javaTest { public static final int DELAY_TIME = 1000; } Kotlin靜態常量寫法 class kotTest { c
原创 具名參數,默認參數,可變參數
class TestObj { /** * 變長參數可以寫在任何位置,前中後 * 一個函數只能有一個變長參數 * */ fun test1(data1: Int, vararg dat
原创 as關鍵字使用
open class Parent{ } class Son:Parent(){ } fun main(arrayList: Array<String>) { var parent:Parent = Son()
原创 if表達式和for循環
fun test(): Unit { /** * if 表達式可以直接將結果返回給變量 * */ var x = 2; var result
原创 虛擬機內存
線程共享區包括堆和方法區 堆 存放對象的區域 垃圾收集器工作區域 分爲新生代,老年代 方法區 常量 靜態變量 編譯後的代碼 線程私有區包括虛擬機棧,本地方法棧,程序計數器 虛擬機棧 棧幀:一個方法擁有一個棧幀,
原创 Java內存模型
概述 java虛擬機分爲線程共享區和線程私有區,共享區包括堆,方法區,私有區域包括程序計數器,虛擬機棧,本地方法棧,共享區是所有線程共享,私有區是每個線程獨自擁有,java內存模型可以理解成一套規則,這套規則規定了私有區和共享區