摘要:
单例设计模式 单例设计模式:采用一定的方法在整个软件系统中,对某个类只能存在一个对象的实例。对外只提供构造对象的公共访问点 创建单例模式的八种方式: 1)饿汉式(静态常量) 2)饿汉式(静态代码块) 3)懒汉式(线程不安全) 4)懒汉式(线程安全,同步方法) 5)懒汉式(线程安全,同步代码块) 6) 阅读全文
摘要:
JVM 一、subSystrm(类加载子系统) loding(加载) 类加载器 类加载器时我们java代码生成的.class文件已二进制流的方式加载到我们JVM当中的过程称为类加载器。 通过以下代码可以清楚看到我们不同加载器可加载的目录 URL[] urLs = Launcher.getBootst 阅读全文
摘要:
第一节:万物皆可为对象 特点:抽象,多态,继承, 封装 一.抽象就像一个没有具体明确的做什么的东西,在java中用abstract关键字修饰,通常可以修饰类或是方法; 1.修饰类 类不可实例化,也就说不能new(抽象的new出来也没什么用) 抽象类要有构造器,便于子类实例化 2.修饰方法 类中没有方 阅读全文
摘要:
1、二叉树 1.1二叉树vs数组和链表 1)数组存储方式分析 优点:通过下标方式访问元素,速度快。对于有序数组,还可使用二分查找提高检索速度。 缺点:如果要检索具体某个值,或者插入值(按一定顺序)会整体移动,效率较低。 2)链表的存储方式分析 优点:在一定程度上对数组存储方式有优化(比如:插入一个数 阅读全文
摘要:
经典算法 1、冒泡排序 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 1.1 算法实现思路 阅读全文