- 博客(36)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
转载 ArrayList的坑
#1. 把Array转化成ArrayList 把Array转化成ArrayList,程序员经常用以下方法:List list = Arrays.asList(arr); Arrays.asList() 实际上返回一个ArrayList,但是这个ArrayList是Arrays的一个内部私有类,而不是java.util.ArrayList类。这个私有类java.util.Ar
2017-10-31 10:27:15 313
转载 垃圾回收器如何工作
From《Thinking in java》 在以前所使用过的程序语言中,在堆上分配对象的代价十分高昂,因此读者自然会觉得Java中所有的对象(基本类型除外)都在堆上分配的方式也非常高昂。然而,垃圾回收器对于提高对象的创建速度,却具有明显的效果。听起来很奇怪----存储空间的释放竟然会影响存储空间的分配,但这确实是某些Java虚拟机的工作方式。这也意味着,Java从对分配空间的速度
2017-10-30 10:43:38 304
原创 接口
java接口可以完全解耦,就是将方法与类之间的耦合降低到方法与接口之间的耦合。接口方法默认是public的 interface默认是public static,域默认是public static final的嵌套interface 在thinking in java里面还没很好的理解。
2017-10-30 10:08:29 207
原创 Java多态
对Java多态的理解,首先要理解这句提纲挈领的话:“多态将做什么和怎么做分离了!”; // Son继承于Father Father father = new Son();左边的声明就是明确father这个引用能够提供的服务,右边就是具体的服务由Son这个类的对象来提供。--域没有多态: 这道腾讯出的面试题就反应了该问题。--方法才有多态:----方法
2017-10-29 16:01:56 317
原创 一个java源文件只允许有一个public的类的动机
这个设计其实很巧,其设计的初衷是为了避免结构混乱而设计的。javc编译器将.java文件看作一个编译单元。且该编译单元里最多只能有一个public类,且该类与.java文件名相同。这样带来的好处是结构清晰,看着文件名就知道该类是什么。并且如果可以有多个public的类,那么其提供访问权限的范围就超出了包,就很容易和其他包下的同名类冲突,并且不好查看,虽然可以通过完全限定名来访问,但这样的结构很显得
2017-10-28 09:17:38 463
原创 JAVA运算符
运算符优先级对于byte short char的移位运算都是是先类型提升到int然后计算,计算的过程中,移位运算符右侧的参数需要进行模32的运算(除非左边的操作数是long类型,需要进行模64运算)。例如,1
2017-10-26 23:21:34 210
原创 MyBatis官网-学习心路历程
2017年10月25日 今日开始学习MyBatis,现在的学习资料主要是看官方文档和博客,浏览了MyBatis的官方网站,感觉内容结构清晰。但都是需要下细理解的。2017年11月20日什么是存储过程都忘记了!相对于直接使用SQL 语句,在应用程序中直接调用存储过程有以下好处: 减少网络通信量。 调用一个行数不多的存储过程与直接调用SQL
2017-10-26 08:37:24 1800
原创 成员初始化语句块及执行顺序
一个类成员变量的空间是在类加载的时候就已经分配好了,并且默认初始化了(只有局部变量是没有默认初始化的)。 java成员分两种,类成员和实例成员。成员初始化可以在声明时就初始化,但是其缺点是对于比较复杂的初始化稍显不足。不过也有几种代替方法。 静态语句块初始化 一个静态语句块就是一个被包括在{}中的正常的语句块,语句块前面有一个static关键字示例:s...
2017-10-20 14:14:03 524
原创 对象的创建过程
一个对象的创建语句如下:Point originOne = new Point(23, 94); 该语句实际上分三部分Declaration:声明、Instantiation:实例化、Initialization:初始化。 ----Declaration: 声明一个变量。 ----Instantiation:new运算符实例化一个对象,给
2017-10-20 11:50:00 274
转载 JAVA基本数据类型转换
转自《JAVA核心卷1》 在程序运行时,经常需要将一种数值类型转换为另外一种数值类型,下图给出了了数值之间的合法转换。 在图中,6个实心箭头,表示无信息丢失的转换;有3个虚线箭头,表示可能有精度损失的转换。例如123456789是一个大整数,它所包含的位数比float类型所能表达的位数多。当将这个整数值转换为float时,将会得到同样大小的结果,但却失去了一定的
2017-10-19 23:49:59 434
转载 Java关键字和保留字
Java Language KeywordsHere is a list of keywords in the Java programming language. You cannot use any of the following as identifiers in your programs. The keywords const and goto are reserved
2017-10-19 16:58:28 419
转载 注解Annotation
注解是一种形式的元数据,其向程序提供数据,但该数据不属于程序的一部分。并且注解对其注解的程序代码的执行不产生直接的影响。注解主要有一下几种作用Information for the compiler —编译器可使用注解去侦测错误和关闭一些警告。如:override, Suppresswarnnings.Compile-time and deployment-time processin
2017-10-19 15:08:14 543
转载 CentOS修改环境变量
1、在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误。2、那么什么是环境变量?简单说,就是指定一个目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件。 设置变量对于一般人最实用的功能就是: 不用拷贝某些dll文件到系统目录中了,而path 这一系统变量就是系统搜索
2017-10-18 23:46:09 333
原创 MySQL的索引数据结构
MySQL目前有四种索引:B-Tree索引最常见的索引类型,大部分引擎都支持B树索引。HASH索引只有Memory引擎支持,使用场景简单。R-Tree索引空间索引是MyISAM的一个特殊索引类型,主要用于地理空间数据类型,通常使用较少。Full-text全文索引也是MyISAM的一个特殊索引类型,主要用于全文索引。
2017-10-16 23:41:04 461
原创 MySQL语句的执行顺序
首先大家应该都知道,where子句后面是不允许出现列别名的,但是可以出现表的别名。都是别名为什么列别名不可用呢。要真正弄清楚这个问题就要深刻理解SQL语句的执行顺序:如下所示(8)SELECT(9)DISTINCT(11)(1)FROM[left_table](3)JOIN(2)ON(4)WHERE(5)GROUPBY(6)WITH(7)HA
2017-10-16 22:14:10 231
原创 一些比较难的SQL语句查询
查询各科成绩都高于90分的人。查询每个部门薪水最高的人。有两张表employees、departments;employees+------+------+---------------+--------+| id | name | department_id | salary |+------+------+---------------+--------+| 2
2017-10-15 16:52:14 3692
原创 SQL优化
SQL优化主要是优化那些效率比较低的语句,如何定位到那些语句。这件事情mysql有个慢查询日志,首先通过查看MySQL变量,看该日志功能是否开启。输入命令
2017-10-15 16:10:13 154
原创 navicat数据库全局关系可视化
一个数据库设计好了,通过建模工作或者全sql语句构建好了,这时我想全局看看实际的关系效果。怎么看?通过navicat是可以看的。步骤一:链接好数据库后。步骤二:双击选中一个数据库。步骤三:点击表显示步骤四:最后的显示效果就是这样的。
2017-10-15 15:51:12 1180
原创 MySQL数据引擎
首先我们先解释下数据引擎。 通过如下命令可以查看现在MySQL支持的数据引擎:http://database.51cto.com/art/201006/205774.htm现在很多数据库不使用外键了,因为现在大型互联网项目需要分库分表,如果表与表之间依赖过重,分库分表的时候比较困难。
2017-10-08 13:22:56 295
原创 MySQL8.x添加用户、授权
MySQL 用户设置如果你需要添加 MySQL 用户,你只需要在 mysql 数据库中的 user 表添加新用户即可。以下为添加用户的的实例,用户名为guest,密码为guest123,并授权用户可进行 SELECT, INSERT 和 UPDATE操作权限:root@host# mysql -u root -pEnter password:*******mysql> use my
2017-10-07 22:37:03 579
原创 适配器模式 Adapter
由于新的需求的提出,两个模块或者两个系统之间需要进行交互,可是交互规则有不一致的情况下,就需要将一个模块适配为另外一个模块可交互的形式,通过适配器来达到可交互的目的。显示生活中的例子就如你带着大陆的插头去香港就是不可以用的,就需要通过一个转接头来达到使用的目的,那个转接头就可以看做是一个适配器。 在java.io中就有现成的适配器的例子。InputStreamReader和Out
2017-10-07 14:16:34 211
转载 加密证书
http://blog.csdn.net/ly131420/article/details/38400583http://www.cnblogs.com/shijingjing07/p/5965792.html
2017-10-07 09:42:24 247
原创 JAVA数组
数组中的元素都是同一类型。数组的长度在创建时确定,并且在创建后不变,如果需要建立存储不同类型的集合,或者要求这种数据存储结构的长度可以动态变化,可以使用Java.util包中的各种集合(Collection)类,例如Vector等。数组的声明 可以声明任何类型的数组,包括基本类型和类类型的数组。数组声明和其他类型的变量声明一样,包括两个部分:数组的类型和数组的名字。数组声明语句
2017-10-06 16:53:32 326
转载 Linux下打包压缩命令使用
在linux下压缩命令主要有compress、gzip、bzip2,xz。相应的每个命令有配套的查看命令。但是这些压缩命令有个缺陷就是只能针对单个文件压缩。 将多个文件或者目录先打包成一个文件的命令是tar命令。这样压缩往往就需要两个步骤,先打包然后压缩。所以GNU项目就将两个步骤进行了整合。[dmtsai@study ~]$ tar [-z|-j|-J] [cv] [-f
2017-10-01 12:05:52 268
分布式系统如何共享、处理(与第三方服务长连接的客户端对象)。
2019-09-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人