- 博客(20)
- 收藏
- 关注
原创 Android
四大组件:活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)、内容提供器(Content Provider) 活动:是一种可以包含用户界面的组件,主要用于和用户进行交互。 活动状态:1、运行状态:一个活动位于返回栈的栈顶时,这时活动就处于运行状态。 2、暂停状态:当一个活动不再处于栈顶位置,...
2018-09-03 02:07:32
140
原创 数据库
存储过程:存储过程是一组 Transact-SQL 语句,它们只需编译一次,以后即可多次执行。因为 Transact-SQL 语句不需要重新编译,所以执行存储过程可以提高性能。 触发器是一种特殊的存储过程,不由用户直接调用。创建触发器时,将其定义为在对特定表或列进行特定类型的数据修改时激发。存储过程的优点:执行速度更快。存储过程只在创造时进行编译,而一般SQL语句每执行一次就编译一次,所以使用存储...
2018-06-01 16:57:22
196
原创 Java内存模型
Java内存模型的主要目标:定义程序中各个变量的访问规则。Java的并发采用的是共享内存模型Java线程之间的通信由Java内存模型(JMM)控制。JMM决定一个线程对共享变量的写入何时对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local memory),本地内存中存储了该...
2018-06-01 16:29:28
139
原创 synchronized与lock
可重入性从名字上理解,ReenTrantLock的字面意思就是再进入的锁,其实synchronized关键字所使用的锁也是可重入的。两者都是同一个线程再进入一次,锁的计数器都自增1,所以要等到锁的计数器下降为0时才能释放锁。可重入锁:一个线程中可以多次获得同一把锁。锁的实现:Synchronized是依赖于JVM实现的,而ReenTrantLock是JDK实现的,有什么区别,说白了就类似于操作系统...
2018-05-31 21:29:32
381
原创 。
MVC:MVC(model-view-controller)是一种软件设计典范,它分离了表现与交互,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。三个核心部件:模型model、视图view、控制器controller 视图:用户看到并与之交互的界面 ...
2018-05-27 17:40:07
425
原创 JVM
JVM把描述类数据的字节码.Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是虚拟机的类加载机制。类从被加载到虚拟机内存中开始,到卸载出内存为止,它的生命周期包括了:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Usi...
2018-05-26 00:56:44
1144
1
原创 Java 关键字(this、static、final)
this:·在类定义的方法中有时需要引用正在使用该方法的对象时,可以用关键字this表示该对象,即表示当前类对象。·格式: this.<变量名> //引用全局变量,解决可能在全局变量和局部变量之间发生的任何同名的冲突 this.<方法名[参数列表]>·在同名构造方法中使用this,可以调用其他同名的构造方法。在构造方法中this...
2018-04-29 18:40:35
271
原创 Java 继承与多态
继承继承:·在多个类之间存在相同的属性和方法时,可从这些类抽象出一个通用类,该通用类可以定义一系列的一般特性,再被其他更具体的类继承,每个具体的类都可以增加一些自己特有的属性和方法。继承性可以使子类拥有父类的成员变量和成员方法。·重要原则: (1)Java只支持单重继承,不支持多重继承。 (2)子类只继承父类中的非private成员变量。 (3)子类的成员变量和父类的成员变量同名时,父类的成...
2018-04-26 17:16:55
201
原创 Java 重载(Overload)与重写(Override)
重载:·重载,又可称为静态多态性,即同一个类中允许多个同名方法,对这些同名方法区分的要点是:参数的个数不同,或者是参数类型不同,或者是参数的顺序不同。·不能把返回类型作为方法重载的依据:public double area(float a,float b){ return a*b;}public int area(float a,float b){ return ...
2018-04-26 15:00:14
161
原创 Java 抽象类与接口
抽象类:·抽象类就是专门设计用来让子类继承的类,用abstract修饰。·抽象类提供一个类的部分实现,其内部可以有成员变量、构造方法、具体方法和抽象方法。抽象类包含的抽象方法以分号结束,且不含方法体,它是必须被子类覆盖的方法。·格式:abstract class<类名>{ 成员变量; 返回类型 方法名(参数列表){方法体} //定义一般方法 ab...
2018-04-26 10:51:45
189
原创 Java 线程
进程与线程:·进程:具有一定独立功能的程序关于某个数据集合上的一次运行活动。进程是系统进行资源分配和调度的一个独立单位。·线程:进程的一个实体,是CPU调度的基本单位。是比线程更小的能够独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。·进程与线程的关系:线程是属于进程的,...
2018-04-25 18:46:03
126
原创 String,StringBuffer,StringBuilder
String:·字符串常量,线程安全的。·String类是final类,是通过char数组来保存字符串的。·String对象创建之后不可更改。在每次对String类型进行改变的时候,其实是生成了一个新的String对象,然后将指针指向新的String对象,原来的String对象因为没有引用指向它,会被JVM的垃圾回收机制(GC)给回收掉。所以执行速度比较慢。·实例化字符串时的优化:字符串常量池。在...
2018-04-21 21:40:19
137
原创 Map集合(HashMap,HashTable,LinkedHashMap,TreeMap,ConcurrentHashMap)
HashMap:·实现了Map接口,并继承 AbstractMap 抽象类。·底层是散列表(哈希表)结构,以Key-Value的形式存在,存储的对象是 Entry (同时包含了 Key 和 Value) 。·HashMap会根据hash算法来计算Key-Value的存储位置并进行快速存取。HashMap只允许一条Entry的键(Key)为null,允许 多条Entry的值(Value)为...
2018-04-21 18:44:21
541
原创 Set接口(HashSet,LinkedHashSet,TreeSet)
HashSet:·采用散列表(哈希表),基于HashMap来实现,map是整个HashSet的核心。·线程不同步。·特点:元素无序和不重复。·保证元素唯一性:通过元素的hashCode()和equals()方法。 调用add()方法向集合中存入对象的时候,首先通过hashCode方法计算该对象的hash值,然后比较与原有对象的hash值是否有 一样的,如果没有一样的hash值就直接存入;如果存...
2018-04-20 23:42:19
173
原创 List接口(ArrayList,LinkedList,Vector)
ArrayList:·以大小可变的“数组”来实现List接口。·容量能够动态增长。1)ArrayList实际上是通过数组保存数据,构造ArrayList时,若使用默认构造函数,则ArrayList的默认初始容量大小为10;2)当ArrayList容量不足以容纳全部元素时,ArrayList会重新设置容量:新的容量=“(原始容量x3)/2 + 1”。所以数组容量动态增长的数量变化:10—>16...
2018-04-20 22:37:31
170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人