JVM学习笔记4_类加载器(续)和命名空间

1. JVM三种类加载器路径获取 可以通过System.getProperty() 方法获取类加载器加载类的路径: System.getProperty("sun.boot.class.path") //表示根类加载器加载路...

2018-12-16 23:25:44

阅读数 30

评论数 0

Git学习笔记

本文记录Git工作中常用的基本命令,备忘。 1. Git初始化配置 # 配置用户信息 git config --global user.name "your name" git config --global user.e...

2018-12-09 23:24:53

阅读数 18

评论数 0

Kotlin学习笔记2_面向对象

1. 类的定义 Kotlin中用class关键字定义一个类。 在Kotlin中,一个类可以有primary构造方法, 以及一个或多个secondary构造方法 primary 构造方法是类头(class header)的一部分,它位于类名后面,可以拥有若干参数 如果 primary构造...

2018-10-21 22:09:23

阅读数 26

评论数 0

Kotlin学习笔记1_基础语法

1. What’s Kotlin? – 引自百度百科 Kotlin 是一个用于现代多平台应用的静态编程语言,由 JetBrains 开发。 Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。 Kotlin已...

2018-10-03 17:29:46

阅读数 43

评论数 0

理解JAVA线程中断

1. 什么是中断  线程中断可以理解为线程的一个标识性属性。中断好比其他线程对该线程打了个“招呼“。中断后具体该如何操作取决于线程本身。 线程中断的几个重要方法: // Thread 类中的实例方法,返回该线程的中断标识位的值 public boolean isInterrupted() {...

2018-07-22 23:14:36

阅读数 80

评论数 0

JVM学习笔记3_类加载器

JVM类加载器分为四种: 根类加载器(Bootstrap ClassLoader): 加载 JRE/lib/rt.jar 或者 Xbootclasspath选项指定的jar包,由C++实现,不是ClassLoader子类 扩展类加载器(Extension ClassLoader): 加载JRE...

2018-07-14 19:04:00

阅读数 48

评论数 0

JVM学习笔记2_接口加载与初始化

接口定义的变量默认都是public static final 的。 当一个接口在初始化时,并不要求其父接口完成了初始化。比如引用一个接口在编译时就能确定的常量值,是不会初始化该接口的。 看下面一个例子: public class MyTest6 { public static vo...

2018-06-10 23:38:08

阅读数 50

评论数 0

采坑_java用buffer读取流数据不对

背景: 项目中采用了BufferedReader, 调用readline()方法读取流中的一行,导致代码在编译时对readline() 方法报了CodeDex, 为了清理CodeDex,坑就挖出来了。 1. 挖坑 代码原来大概是这样的: public class MyTest1 { ...

2018-06-08 00:11:57

阅读数 863

评论数 0

JVM学习笔记1_类加载与初始化

在java代码中,类型(class, interface, enum)的加载,连接,初始化过程都是在程序的运行期间完成的。 类型的加载最常见的情况是将磁盘上的class文件加载到内存中。 JVM与程序生命周期 在如下几种情况下, JVM将结束生命周期: 执行System.exit()...

2018-06-05 00:04:25

阅读数 36

评论数 0

java8学习笔记5_新日期API

1. 关于日期与时间 几个时间概念: 格林威治标准时间(GMT): 正午时间是太阳穿越本初子午线的时间,该时间由于地球自转影响,时间会有误差,它被更精确的UTC时间取代, 但可以理解GMT时间和UTC时间是等价的。 UTC时间(Coordinated Universal Time):协调世界...

2018-06-03 22:12:38

阅读数 33

评论数 0

java8学习笔记4_Stream底层实现类小记

 出现了lambda表达式和函数式接口后,对于之前的匿名内部类语法,就有了很好的替代方式。使用lambda会使得语法更简单,但是二者本质上还是不同的。 public class LambdaTest { Runnable r1 = () -&...

2018-06-03 22:10:38

阅读数 185

评论数 0

java8学习笔记3_流与自定义收集器使用陷阱总结

 上一篇讲解了Java8中的流与收集器的使用方式,这篇记录一下自定义收集器可能会遇到的问题和使用陷阱。  Collector接口里定义了一个枚举类Characteristics,里面有三个值:CONCURRENT , UNORDERED, IDENTITY_FINISH。当自定义收集器的时候,就...

2018-05-13 13:16:31

阅读数 216

评论数 0

java8学习笔记2_流与收集器使用

1. 接口定义方法   java8接口可以定义default method 和 static method,其中default method供实现该接口的实例调用,static method供类直接调用。 注意点: 多个接口默认方法签名相同的问题。  假如有实现类实现了多个含有相同默认...

2018-05-12 12:04:22

阅读数 41

评论数 0

java8学习笔记1_函数式接口与lambda表达式

1. 函数式接口 特性: 函数式接口中抽象方法个数为1 如果一个接口使用@FunctionalInterface注解,编译器要求其符合函数式接口的定义 接口只有一个抽象方法,但没有@FunctionalInterface注解,编译器仍然\将其作为函数式接口对待 接口声明的抽象方法重写了jav...

2018-04-26 00:20:23

阅读数 82

评论数 0

MySQL索引笔记

1. 索引概念  索引是单独的,存储于磁盘上的一种数据结构。 2. 设计原则 索引并非越多越好。索引虽然查询快,但是会影响插入,修改,删除语句性能. 避免对经常更新的表做过多的索引。 对于经常查询的字段应该创建索引。 数据量小的表的不要使用索引。 在不同值较多的列上建立索引。不同值太少的列...

2018-04-10 00:23:21

阅读数 44

评论数 0

设计模式之命令模式

1. 定义 在软件系统中,行为请求者与行为实现者通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将“行为请求者”与“行为实现者”解耦?将一组行为抽象为对象,实现二者之间的松耦合。这就是命令模式(C...

2018-04-02 00:42:03

阅读数 26

评论数 0

docker学习手记

1. ubuntu容器安装ip命令   学习docker网络知识时,发现启动的容器都没有ping这个命令,找了半天如何安装,记录一下。  大概流程如下: #新建网络: $ docker network create -d bridge my-net #启动一个容器 $ docker run...

2018-03-05 00:02:08

阅读数 25

评论数 0

${}一些特殊用法总结

${}最常用的就是获取变量的值,除此之外,他还有一些特殊用法。 1. 字符串截取  shell中直接用${}就可以完成字符串截取功能,非常方便。比如用find 命令查找文件名后,对输出结果进行截取,区分目录和文件名: #!/bin/bash set -e file_names=`...

2018-02-27 23:22:07

阅读数 117

评论数 0

Linux脚本参数$#,$$,$n,$@,$*区别

看过又忘了,记性不好,还是记下来吧。 大概总结一下: 变量名 含义 $0 表示当前脚本的文件名 $n 传递给脚本的第几个参数,n表示第几个, n >= 1 $# 表示参数的个数 $* 表示所有的参数,注意与 ...

2018-02-23 23:30:52

阅读数 596

评论数 0

python学习笔记2之基本数据结构

1. list (列表)   python中列表表示可变的有序的集合,集合元素本身没有限制,可以为不同的数据类型。   定义列表的几种方式: L = [1, -10.5, True, None] L = [x for x in range(1, 10)] # 列表生成式,生成[1,2,...

2018-02-21 17:56:13

阅读数 48

评论数 0

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