- 博客(52)
- 收藏
- 关注
转载 android四大组件介绍
android四大组件分别为activity、service、content provider、broadcast receiver。一、android四大组件详解1、activity(1)一个Activity通常就是一个单独的屏幕(窗口)。(2)Activity之间通过Intent进行通信。(3)android应用中每一个Activity都必须要在An
2015-12-22 15:38:45 645
转载 驱动模块和桩模块的概念和区别
桩模块和驱动模块(以C语言为例): 很多人对桩模块和驱动模块的概念会搞不清楚,那么下面来介绍这两个概念: 模块结构实例图: 假设现在项目组把任务分给了7个人,每个人负责实现一个模块。你负责的是B模块,你很优秀,第一个完成了编码工作,现在需要开展单元测试工作,先分析结构图: 1、由于B模块不是最顶层模块,所以它一定不包含main函数(A模块包含main函数
2015-11-10 20:02:44 625
转载 Java多线程问题总结
不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、优化经验,所以线程相关的问题在面试中经常会被提到。在典型的Java面试中, 面试官会从线程的基本概念问起, 如:为什么你需要使用线程, 如何创建线程,用
2015-10-07 11:45:51 431
原创 值传递与引用传递
执行以下程序后的输出结果是()1234567891011publicclass Test {publicstatic void main(String[] args) { StringBuffer a = new
2015-10-06 19:52:32 366
转载 Set和List 的关系与区别
两个接口都是继承自Collection. List (inteface) 次序是List 的最重要特点,它确保维护元素特定的顺序. --ArrayList 允许对元素快速随机访问. --LinkedList 对顺序访问进行优化,向List 中间插入与移除的开销并不大,具有addFrist(),addLast(),getFirst,getLast,removeFirst和re
2015-10-06 15:32:00 372
转载 JAVA容器类解析
虚线框表示接口。实线框表示实体类。粗线框表示最常用的实体类。点线的箭头表示实现了这个接口。实线箭头表示类可以制造箭头所指的那个类的对象。 容器类持有对象方式 1, Collection:只允许每个位置上放一个对象。它包括“以一定顺序持有一组对象”的List,以及“只能允许添加不重复对象”的Set。你可以用add()方法向Collect
2015-10-06 11:12:10 294
转载 读写锁
1、概述 读写锁与互斥量类似,不过读写锁允许更高的并行性。互斥量要么是锁住状态,要么是不加锁状态,而且一次只有一个线程对其加锁。读写锁可以有三种状态:读模式下加锁状态,写模式下加锁状态,不加锁状态。一次只有一个线程可以占有写模式的读写锁,但是多个线程可用同时占有读模式的读写锁。读写锁也叫做共享-独占锁,当读写锁以读模式锁住时,它是以共享模式锁住的,当它以写模式锁住时,它是以独占模式锁住的
2015-10-06 10:05:46 529
转载 白盒测试概述及其方法简介
引言:白盒测试作为测试人员常用的一种测试方法,越来越受到测试工程师的重视。白盒测试并不是简单的按照代码设计用例,而是需要根据不同的测试需求,结合不同的测试对象,使用适合的方法进行测试。因为对于不同复杂度的代码逻辑,可以衍生出许多种执行路径,只有适当的测试方法,才能帮助我们从代码的迷雾森林中找到正确的方向。1.白盒测试的概述由于逻辑错误和不正确假设与一条程序路径被运行的可能性成反比。由于
2015-10-04 10:52:22 589
转载 https和http的区别
在做雅虎的时候,发现用第三方工具截取不到客户端与服务端的通讯,以前重来没碰到过这种情况,仔细看了看,它的url请求时基于https的,gg了下发现原来https协议和http有着很大的区别。总的来说,http效率更高,https安全性更高。首先谈谈什么是HTTPS:HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信
2015-09-29 11:37:57 312
原创 第一范式、第二范式、第三范式
构造数据库必须遵循一定的规则。在关系数据库中,这种规则就是范式。范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式(2N
2015-09-24 13:47:54 1370
转载 经典SQL语句大全
一、基础1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwin
2015-09-24 09:47:59 249
转载 java的动态绑定与静态绑定
首先是方法的参数是父类对象,传入子类对象是否可行然后引出Parent p = new Children();这句代码不是很理解,google的过程中引出向上转型要理解向上转型又引出了动态绑定从动态绑定又引出了静态绑定 程序绑定的概念:绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对java来说,绑定分为静态绑定和动态绑定;或者叫做前期绑定和后期绑定
2015-09-19 18:16:32 237
转载 HTTP协议详解
引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of H
2015-09-14 14:30:41 293
转载 HTTP协议--处理状态和返回状态码含义
HTTP 处理状态。当一个XMLHttpRequest初次创建时,这个属性(readystate)的值从0开始,直到接收到完整的HTTP响应,这个值增加到4。5个状态中每一个都有一个相关联的非正式的名称,下表列出了状态、名称和含义:状态 名称 描述0 Uninitialized 初始化状态。XMLHttpRequest 对象已创建或已被 abo
2015-08-30 14:20:42 410
转载 JAVA接口
一、接口的概念 JAVA是只支持单继承的,但现实之中存在多重继承这种现象,如“金丝猴是一种动物”,金丝猴从动物这个类继承,同时“金丝猴是一种值钱的东西”,金丝猴从“值钱的东西”这个类继承,同时“金丝猴是一种应该受到保护的东西”,金丝猴从“应该受到保护的东西”这个类继承。这样金丝猴可以同时从 “动物类”、“值钱的东西类”、“应该受到保护的东西” 这三个类继承,但由于JAVA只支持单继承
2015-08-28 16:50:22 283
原创 浅谈MVC框架
MVC是Model—View—Controler的简称。即模型—视图—控制器。MVC是一种设计模式,它强制性的把应用程序的输入、处理和输出分开。 MVC中的模型、视图、控制器它们分别担负着不同的任务。视图: 视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并接受用户的输入。视图不进行任何业务逻辑处理。模型: 模型表示业务数据和业务处理。相当于JavaBean。一个模
2015-08-28 16:17:16 491
转载 Maven学习总结(九)——使用Nexus搭建Maven私服
一、搭建nexus私服的目的 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。1.1、Nexus架构 二、nexus私服的下载和安装2.1
2015-08-28 16:07:46 296
转载 Maven学习总结(八)——使用Maven构建多模块项目
在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层)、dao(数据库访问层)、service(业务逻辑层)、web(表现层),这样分层之后,各个层之间的职责会比较明确,后期维护起来也相对比较容易,今天我们就是使用Maven来构建以上的各个层。 项目结构如下: system-parent |----pom.
2015-08-28 16:06:51 337
转载 Maven学习总结(七)——eclipse中使用Maven创建Web项目
一、创建Web项目1.1 选择建立Maven Project 选择File -> New ->Project,如下图所示: 在New窗口中选择 Maven -> Maven Project。点击【next】如下图所示: 1.2 选择项目路径 根据项目的实际情况选择项目的存放目录,也可以选择【Use default Workspace location】
2015-08-28 16:05:20 259
转载 Maven学习总结(六)——Maven与Eclipse整合
一、安装Maven插件 下载下来的maven插件如下图所示:,插件存放的路径是:E:/MavenProject/Maven2EclipsePlugin 进入到eclipse中的dropins目录下,新建三个txt文件(zest.txt,m2e.txt,m2e-extras.txt)。如下图所示: m2e.txtt文件的内容如下:path=E:/MavenProje
2015-08-28 16:04:04 306
转载 Maven学习总结(五)——聚合与继承
一、聚合 如果我们想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合1.1、聚合配置代码1 modules>2 module>模块一module>3 module>模块二module>4 module>模块三module>5 modules> 例如:对项目的Hello、HelloFriend、MakeFriends这三
2015-08-28 16:02:55 365
转载 Maven学习总结(四)——Maven核心概念
一、Maven坐标1.1、什么是坐标? 在平面几何中坐标(x,y)可以标识平面中唯一的一点。1.2、Maven坐标主要组成groupId:组织标识(包名)artifactId:项目名称version:项目的当前版本packaging:项目的打包方式,最为常见的jar和war两种样例: 1.3、Maven为什么使用坐标?Maven世界拥有大量构建,
2015-08-28 16:01:41 250
转载 Maven学习总结(三)——使用Maven构建项目
maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项目的过程。一、构建Jave项目1.1、创建Jave Project 1、使用mvn archetype:generate命令,如下所示:mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=myapp -
2015-08-28 16:00:09 282
转载 Maven学习总结(二)——Maven项目构建过程练习
这一篇主要是体验一下Maven高度自动化构建项目的过程一、创建Maven项目1.1、建立Hello项目 1、首先建立Hello项目,同时建立Maven约定的目录结构和pom.xml文件 Hello | --src | -----main | ----------java | ----------resources
2015-08-28 15:57:25 285
转载 Maven 学习总结(一)------Maven入门
一、Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。1.1、项目构建 项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。 理想的项目构建是高度自动化,跨平台,可重用的组件
2015-08-28 15:45:57 338
转载 利用Jenkins+Gitlab搭建持续集成(CI)环境
http://hyhx2008.github.io/li-yong-jenkinsgitlabda-jian-chi-xu-ji-cheng-cihuan-jing.html这次实习的任务之一就是搭建一个持续集成(Continuous Integration)环境。我们选择Jenkins作为持续集成工具,其优点是提供web GUI配置界面,方便配置,还可以安装很多第三方插件(plugi
2015-08-26 13:37:39 782
转载 二叉树:已知前序和中序,求后序
这个题有多经典完全不用质疑了,在2010年悲惨的腾讯暑假实习生笔试中就再次出现。要说这个题,我在一年前都见过多次,但是由于忽视了,还是没有思考具体如何做。敲了这么多代码,也没有去纠结数据结构的问题,结果,笔试时还是不会。找实习找工作,其实在某种程度上就是个考试。考试的概念是:有用的不一定考,没用的很可能涉及。敲了不少代码也不一定能对笔试很有信心,应该说完全没信心。所以,必要的集中准备是很有用的。进
2015-08-23 09:41:11 946
转载 线程同步与死锁
线程同步和线程死锁分类:JAVA SE 2012-05-02 02:54 5076人阅读 评论(0)收藏 举报多线程exceptionobjectthread数据库java1.线程同步,一个关键字:synchronized为什么有这个东西呢,假如有一个对象,里面有成员变量和方法,如果有很多线程都想访问它们,有可能造成用户想避免的结果。我也
2015-08-16 22:06:02 333
转载 线程同步与异步的区别
多线程和异步操作的异同 多线程和异步操作两者都可以达到避免调用线程阻塞的目的,从而提高软件的可响应性。甚至有些时候我们就认为多线程和异步操作是等同的概念。但是,多线程和异步操作还是有一些区别的。而这些区别造成了使用多线程和异步操作的时机的区别。 异步操作的本质 所有的程序最终都会由计算机硬件来执行,所以为了更好的理解异步操作的本质,我们有必要了解一下它的硬件基础。 熟悉电脑硬件的
2015-08-16 20:55:26 478
转载 java中堆与栈的区别
在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 堆内存用来存放由new创建的对象和数组。 在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。
2015-08-16 20:31:14 273
转载 面试题总结
1、n是一个奇数,求证n(n^2-1)能被24整除(网易)n=2*k+1;那么n(n^2-1)=4*k(k+1)*(2k+1)=4*6*(1^2+...+k^2),显然能被24整除。2、do...while和while...do有什么区别(华为)前者先执行一遍循环体,在进行条件判断;后者先进性判断,然后根据判断结果来决定是否执行;所以前者的循环体至少执行一次。3、两个整数集合A和B
2015-08-16 15:49:23 3172
转载 常见的几种排序算法
排序一直以来都是让我很头疼的事,以前上《数据结构》打酱油去了,整个学期下来才勉强能写出个冒泡排序。由于下半年要准备工作了,也知道排序算法的重要性(据说是面试必问的知识点),所以又花了点时间重新研究了一下。 排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。 内排序有可以分为以下
2015-08-14 16:38:23 409
转载 几种常见排序算法的稳定性分析
【1】选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法冒泡排序、插入排序、归并排序和基数排序都是稳定的排序算法。【2】研究排序算法的稳定性有何意义?首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前两个相等的数据其在序列中的先后位置顺序与排序后它们两个先后位置顺序相同。再简单具体一点,如果A i == A j,Ai原来在 Aj 位置前,排序后 Ai 仍然
2015-08-14 16:33:09 394
转载 Linux中fork()函数知识详解
一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进
2015-08-13 22:02:51 202
转载 线程与进程的区别
线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源(3)线程是处理器调度的基本单位,但进程不是.4)二者均可并发执行. 进程和线程都是由操作系统所体会的程序运行的基本单元,
2015-08-11 19:02:14 205
原创 线程安全
线程的工作原理,jvm有一个main memory,而每个线程有自己的working memory,一个线程对一个variable进行操作时,都要在自己的working memory里面建立一个copy,操作完之后再写入main memory。多个线程同时操作同一个variable,就可能会出现不可预知的结果。根据上面的解释,很容易想出相应的scenario。而用syn
2015-08-11 11:27:03 232
原创 针对Bug的管理措施
假如只是对缺陷的生命周期进行管理和跟踪,Bugzilla或者TD已经足够了,1.要更好的管理缺陷,必须引入缺陷管理工具,商用的或者开源的都可。2.根据缺陷的生命周期,考虑缺陷提交的管理、缺陷状态的管理和缺陷分析的管理。3.所有发现的缺陷(不管是测试发现的还是走读代码发现的)都必须全部即时的、准确的提交到缺陷管理工具中,这是缺陷提交的管理。4.缺陷提交后,需要即时的指派给相应的开发人
2015-08-09 21:09:36 688
原创 如何提交高质量的软件缺陷(Bug)记录
一篇高质量的软件缺陷记录应该考虑一下方面:1) 通用ui要统一、准确缺陷报告的ui要与测试的软件ui保持一致,便于查找定位。2) 尽量使用业界惯用的表达术语和表达方法使用业界惯用的表达术语和表达方法,保证表达准确,体现专业化。3) 每条缺陷报告只包括一个缺陷每条缺陷报告只包括一个缺陷,可以使缺陷修正者迅速定位一个缺陷,集中精力每次只修正一个缺陷。校验者每次只校验一个缺陷是否已经正确修
2015-08-09 15:49:25 16989
转载 bugzilla中bug的状态变更
1.NEW测试人员将Bug提交给任务分发人员(研发模块负责人),此时Bug状态为NEW,开始Bug的生命周期,如果测试人员知道具体负责的研发人员,也可以直接指定,在Assign To项目中输入具体负责的研发人员Email2.ASSI任务分发人员将Bug分发给指定研发人员时,将Bug置为ASSI状态,解决Bug的工作开始3.Ressigned研发人员接收到Bug,经过分析,不
2015-08-09 15:28:37 1609
转载 回归测试和冒烟测试的区别
回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。因此,通过选择
2015-08-09 15:09:09 2341 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人