摘要: 二、一些概念 列式存储:可以理解为将一张表中的数据 按照每一列单独拆开存储 相对于关系数据库中通常使用的行式存储,在使用列式存储时每一列的所有元素都是顺序存储的。由此特点可以给查询带来如下的优化: 查询的时候不需要扫描全部的数据,而只需要读取每次查询涉及的列,这样可以将I/O消耗降低N倍,另外可以保 阅读全文
posted @ 2019-02-13 16:12 小白峰的进阶之路 阅读(911) 评论(0) 推荐(0) 编辑
摘要: 关于静态属性和方法的继承问题: 对于非静态属性,子类会继承下来并且可以对其操作;但是一旦子类有了同名属性时,父类的属性会被隐藏,这时操作的就是子类的那个和父类同名的属性。 所以在被隐藏时要看使用时要看是父类的引用指向对象还是子类的引用指向对象。是谁的引用就调用谁的属性。 对于静态属性,子类继承并使用 阅读全文
posted @ 2017-03-08 11:45 小白峰的进阶之路 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 单例模式是23种设计模式中比较常见的设计模式,又因为其代码量精简,所以经常会被用在在面试中测试面试者的能力。 初级的单例模式很简单 实现两个要求 1构造方法私有化 2对外提供静态的,公开的获取对象的方法 所以:初级单例模式如下 public class Singelton {private Sing 阅读全文
posted @ 2017-03-07 21:46 小白峰的进阶之路 阅读(2569) 评论(0) 推荐(0) 编辑
摘要: 1 class X{ Y y=new Y(); public X(){ System.out.print("X"); }}class Y{ public Y(){ System.out.print("Y"); }}public class Z extends X{ Y y=new Y(); publ 阅读全文
posted @ 2016-11-06 18:05 小白峰的进阶之路 阅读(186) 评论(0) 推荐(0) 编辑
摘要: static void m3(String s1,String s2){//默认s2比s1长 String str=""; for(int i=0;i<s1.length();i++){//开始截取的下标 for(int j=1;j<=s1.length()-i;j++){//截取的长度j if(s 阅读全文
posted @ 2016-08-24 09:31 小白峰的进阶之路 阅读(289) 评论(0) 推荐(0) 编辑
摘要: package 单例模式;/* * 单例模式:为了确保JVM中某一个类的对象只有一个。 * 要领:1构造方法私有化 * 2 对外提供一个获取当前类型对象的方法 * 3 类里面要提供一个当前类型的静态变量 * * 单例模式有两种: * 饿汉式 * 懒汉式 * **/public class TestD 阅读全文
posted @ 2016-08-15 15:21 小白峰的进阶之路 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 基本思想:将二维数组存入到一个新的一维数组中,将一维数组排序后,再加以格式控制输出 class work03 { public static void main(String[] args) { int a[][]={ {11,15,32,21},{2,3},{4,6,5}}; int length 阅读全文
posted @ 2016-08-09 14:34 小白峰的进阶之路 阅读(733) 评论(0) 推荐(0) 编辑
摘要: 数组{ 物以类聚 人以群分 avg sum 数组 数组的概念[ 数组:一组具有相同数据类型的集合 ] 数组的语法[ 先声明 后使用 声明数组: 数据类型+[]+ 变量名 ;/ 数据类型+变量名 +[]; 初始化数组:[ 1 动态初始化 array=new 数据类型[长度]; 系统会为数组中的元素分配 阅读全文
posted @ 2016-08-08 13:32 小白峰的进阶之路 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 在Java中的break语句功能大体上同c语言, 用于循环语句中,表示结束当前循环。 但是有时候在循环嵌套语句中,仅仅靠一 个break语句想实现是不够的。 例: 如果想使sum在501时就直接输出,上述代码可以吗? 看看输出结果吧! 。 为什么会这样呢? 因为break终止的只是最内层的循环, 当 阅读全文
posted @ 2016-08-06 13:23 小白峰的进阶之路 阅读(11497) 评论(0) 推荐(0) 编辑
摘要: 对两个数求平均值可以说是初学编程的人都能很轻松的解决的问题 表面上好像是这样,但是有考虑过程序的健壮性吗? 例: int a,b; 求a,b 的平均值 一般人很容易想的到 (a+b)/2; 可是 int取值范围是21亿多 如果 a=15000000000; b=15000000000;//十五亿 这 阅读全文
posted @ 2016-08-05 15:45 小白峰的进阶之路 阅读(261) 评论(0) 推荐(0) 编辑