学习心得
abinxue
我是一个菜鸟,对于任何事情都一样。保持一颗归零的心是一种境界,那是我想达到的境界…
展开
-
搜索与排序(二)
一、基于内容的排名该评价方法有三种评价量度:1)单词频度:以查询条件在被查询网页中出现的频度为标 准,频度越高对该网页的评价就越高,其排名就越靠前。2)文档位置:以查询条件在被查询网 页中出现的位置为标准,查询条件在网页中出现的位置越靠前该网页评价就越高, 其排名就越靠 前。3)单词距离:当查询条件是多个单词时,计算查询条件的单词在网页中的距离,距离越小 其评价就越高, 其排名就越靠前原创 2012-03-04 09:17:56 · 461 阅读 · 0 评论 -
小鼠引发的毒药检测问题
小鼠引发的问题 最近在网上看到一个挺有趣的问题,问题的描述是这样的:有很多瓶无色的液体,其中有一瓶是毒药,其它都是蒸馏水,实验的小白鼠喝了以后会在n分钟后死亡,而喝到蒸馏水的小白鼠则一切正常。现在有n只小白鼠,请问一下,我们用这n只小白鼠,n分钟的时间,能够检测多少瓶液体的成分? 我刚看完这个问题,脑子里就出现一个答案:最多检测n瓶!呵呵··不笑我哦,但原创 2012-03-15 23:18:02 · 1730 阅读 · 2 评论 -
装饰模式之我见
装饰模式之我见 当我们想对一个对象增加功能时一般的做法是对产生该对象的类进行功能扩展,利用扩展之后的类进行实例化进而达到自己的目的。而装饰模式是动态的给对象增加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活(这种灵活性主要体现在客户端)。 装饰模式的一般做法是:第一步,创建一个基类并基于此类创建两个子类:装饰对象类和装饰抽象类,装饰对象类主要用来实例化被装饰的对原创 2012-03-11 15:28:00 · 559 阅读 · 0 评论 -
JAVA学习——IO操作(一)
JAVA学习——IO操作(一)一、IO初步:JAVA程序中,对于数据的输入与输出操作都是以流的方式进行的,按照流的方向不同可以分为输入流与输出流(这里的输入与输出均是以程序为参照),按照处理数据单位不同可以分为字节流(直接连接数据源的流)与字符流,按照功能不同可以分为节点流与处理流。 字节流字符流输入流Inpu原创 2012-03-06 07:15:36 · 673 阅读 · 0 评论 -
交通灯管理系统
交通灯管理系统一、需求分析。在进行设计之前我们需要了解具体的十字路口交通规则:1、红灯停绿灯行。2、对于十字路口的四个路口而言,“向右转弯”始终是允许的即该方向始终保持绿灯。3、在十字路口处可以有12条行车路线可以选择(如下图所示),其中可以分为5组,每一组中的一条路线是可行的则表示改组中的其他路线也是可行的。二、系统设计。1、 对象分析:系统中可以抽象出的对象为:路、红绿灯原创 2012-04-08 08:47:32 · 1484 阅读 · 0 评论 -
银行业务调度系统
----------------------具体需求1. 共6个业务窗口,1-4是普通窗口,5是快速窗口,6是VIP窗口; 分别对应三种类型的客户: 普通客户, 快速客户, VIP客户2. 随机生成各种类型的客户, 生成各类型客户的概率比例为普通 : 快速 : VIP = 6 : 3 :13. 客户办理业务时间有最大和最小值之分, VIP和普通客户所需服务时间在允许范围内随机设定, 快原创 2012-04-08 08:44:59 · 605 阅读 · 0 评论 -
多线程(一)
多线程(一) 进程与线程:进程是一个正在执行的程序,每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或叫一个控制单元。线程就是进程中的一个独立的控制单元。一个进程中至少有一个线程。 Java虚拟机启动时就会有一个进程,该进程中至少一个线程负责java程序的执行。而且这个线程运行的代码存在于main方法中,并且该线程称之为主线程。原创 2012-03-23 23:23:25 · 783 阅读 · 0 评论 -
Java学习—IO—File(二)
Java学习—IO—File(二)一、递归列出目录中所有内容package com.abin;import java.io.File;public class FileRecursion { public static void main(String[] args) { Filedir = new File("C:\\Documents a原创 2012-03-23 23:18:48 · 740 阅读 · 0 评论 -
Java学习—IO—File(一)
Java学习—IO—File(一) File类是文件和目录路径名的抽象表示形式。 File类中常见的方法:一、创建文件。1、 boolean createNewFile():功能:当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。返回值:如果指定的文件不存在并成功地创建,则返回 true;如果指定原创 2012-03-14 22:58:55 · 3172 阅读 · 0 评论 -
Java学习—IO—操作规律
Java学习—IO—操作规律 IO操作的规律总结如下:一、明确源和目的。源为输入流,包含inputstream,reader。目的为输出流,包含Outputstream,writer。二、分别确定操作源文件和目的文件是否为纯文本。如果不是则选取字节流:类名以stream结尾。如果是则选取字符流操作:类名以reader和writer结尾。如果源文件和目的文件文件类型不同则需要进行“原创 2012-03-12 08:47:23 · 865 阅读 · 2 评论 -
利用JAVA执行本地EXE文件
利用JAVA执行本地EXE文件 曾经为了这样一个需求找了很多资料,今天终于学习到了!如何利用java执行exe文件?使用java类Runtime,每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。可以通过 getRuntime 方法获取当前运行时。应用程序不能创建自己的 Runtime 类实例。package com.abin;原创 2012-03-07 00:03:33 · 3766 阅读 · 0 评论 -
Java学习——网络编程(服务器端支持多个客户端同时工作)
如何实现服务器端支持多个客户端同时工作?秘籍就是:在服务器端利用多线程。客户端:import java.io.*;import java.net.*;/** * Socket客户端 * 功能为:发送字符串“Hello”到服务器端,并打印出服务器端的反馈 */public class MulSocketClient { public static void原创 2012-04-21 17:43:26 · 6689 阅读 · 0 评论 -
JAXP对XML的DOM解析(增删改查)
DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。 DOM 以及广义的基于树的处理具有几个优点。首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作原创 2012-05-18 16:49:21 · 1236 阅读 · 0 评论 -
Java对象的序列化和反序列化实践
Java对象的序列化和反序列化实践 当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。 把Java对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为Java对象的过程称为对象的反序列化。原创 2012-07-22 09:33:28 · 1595 阅读 · 0 评论 -
Java 的对象序列化
Java 的对象序列化 序列化的过程就是对象写入字节流和从字节流中读取对象。将对象状态转换成字节流之后,可以用java.io包中的各种字节流类将其保存到文件中,管道到另 一线程中或通过网络连接将对象数据发送到另一主机。对象序列化功能非常简单、强大,在RMI、Socket、JMS、EJB都有应用。对象序列化问题在网络编程中并不是最激动人心的课题,但却相当重要,具有许多实用意义。原创 2012-07-22 07:12:42 · 956 阅读 · 0 评论 -
初识Servlet—Servlet生命周期
Servlet是java的一个类,定义在javax.servlet包下。Servlet是由服务器负责管理运行,当多个 客户请求同一个Servlet时,服务器为每个客户启动一个线程而不是一个进程,这些线程由服务器 统一管理。Servlet是运行在服务器端的,由服务器进行初始化。与Servlet生命周期相关的函数有:init()、service()、destroy()。(1)init():原创 2012-07-24 18:15:34 · 1301 阅读 · 0 评论 -
开发部署一个简单的Servle
开发部署一个简单的Servlet先介绍一下Tomcat的目录结构,然后讲解如何添加一个应用,并部署一个简单的Servlet。1)Tomcat 的主要目录结构① /bin: 存放Tomcat服务器的可执行文件和运行用的Jar包。② /conf :存放Tomcat服务器的各种配置文件,其中最重要的是server.xml。③ /server :包含3个子目录classes、lib和w原创 2012-07-24 18:21:06 · 1466 阅读 · 0 评论 -
比赛日程安排(JAVA实现)
比赛日程安排(JAVA实现)题目是这样的1、 设有n个球队要进行排球循环赛,设计一个满足以下要求的比赛日程表:a) 每个球队必须与其他n-1个球队各赛一次;b) 每个球队一天只能赛一次;c) 当n是偶数时,循环赛进行n-1天。当n是奇数时,循环赛进行n天。n=6的比赛日程表示例(把6个队从1到6进行编号):n原创 2012-03-15 22:46:03 · 4286 阅读 · 0 评论 -
JAVA学习——IO操作(三)
JAVA学习——IO操作(三)因为大部分时间是对文件的操作,所以在此以对文件的操作为例介绍一下IO程序的基本步骤。基本步骤总结如下:1、 创建IO对象(在创建对象的过程中要注意指定目的文件,一般是通过构造函数,所以了解各个IO类的构造函数很重要)2、 调用IO对象对应的IO方法(read(),write()等)将数据写入输入或输出流,IO方法有很多重载形式,需要按需选择。原创 2012-03-07 17:02:04 · 663 阅读 · 0 评论 -
初识XML
XML是一种可扩展标记语言,其标记方式的定义可以在DTD或XML Schema中加以描述, 而关于其如何显示这些标记的内容则由附加在文档上的样式表提供。XML是一个精简的SGML子集,他将SGML丰富的功能与HTML的易用性结合到Web应用中。HTML只是Web显示数据的通用方法,而XML是Web直接处理数据的通用方法,HTML着重于Web页面的显示格式,而XML着重于描述Web页面的内容原创 2012-03-04 09:14:09 · 653 阅读 · 0 评论 -
面向对象与设计模式之我见
面向对象与设计模式之我见 面向对象的目的就是通过封装,继承,多态使程序具有可维护,可扩展,可复用及灵活性好特点。总之面向对象要将程序之间的耦合度降到最低。 可维护即如果程序需要改动只需要改动需要改动之处,而不需要涉及整个项目。可扩展即项目如需添加新功能只需要在原项目上添加,而不需要改动项目其他地方。可复用即开发的项目可以循环利用,这里的复用不只是简简单单的“复制”。灵活性好即可以随意的更改样式…原创 2012-02-26 09:59:47 · 500 阅读 · 0 评论 -
搜索与排序(一)
搜索引擎的组成:1、找到一种搜集文档的方法,进行文档搜索。2、为网页建立索引。3、通过查询返回一个经过排序的列表。在组成1中,其实质为通过一种“可行”的方法,将网页存储在指定的位置。在组成2中,其实质是将网页信息保存在数据库中,网页信息包括:(1)网页的URL。(2)网页中的单词。(3)网页中单词的位置。(4)介于文档之间的链接信息:一个文档与另一个文档链接原创 2012-03-04 09:16:47 · 470 阅读 · 0 评论 -
在网站中如何提供推荐
“提供推荐”是基于协作型过滤算法的。协作型过滤的概念为:一个基于协作型过滤的算法,通常的做法是对一大群人进行搜索从中计算出与我们品味比较相似的一小群人,然后算法对这一小群人的偏好进行考察,并将它们进行组合,最后构造出一个经过排序的推荐列表。“提供推荐”的步骤如下:偏好搜集:在网页中设置表单或其他方式,设置一系列特定的字符代表一定的偏好,将这些特定的字符与偏好一一对应,并以键值对原创 2012-03-04 09:15:33 · 683 阅读 · 0 评论 -
集体智慧的概念
一、集体智慧:为了创造新的想法而将一群人的行为偏好或思想组合在一起。(其精华在于利用分析群组的大量信息所得出的结论预测一个新的独立的数据样本的特性) 集体智慧的应用极其广泛,谷歌搜索的排序算法(PageRank)就是利用其他网页对当前网页引用的次数多少来评价网页等级的二、机器学习:是人工智能领域中与算法相关的一个子域,它允许机器进行不断的学习。 其工作流程:分析数据原创 2012-03-04 09:10:24 · 1177 阅读 · 0 评论 -
工厂模式
工厂模式 “编程是一门技术,更是一门艺术,不能只满足于写完代码运行结果正确就完事,时常考虑如何让代码更加简练,更加容易维护,容易扩展和复用,只有这样才可以得到真正提高。”—引自《大话设计模式》一书。 何谓工厂,工厂就是生产产品的地方。它负责生产产品而不负责设计和定义产品。在设计模式中的工厂是一个专门负责创造实例的单独的一个类,它不负责产生实例的类的设计与定义。工厂模式封装了对象创建的过程,使类的定原创 2012-02-27 13:46:45 · 388 阅读 · 0 评论 -
策略模式之我见
---------------------- android培训、java培训、期待与您交流! ---------------------- 谈论该模式之前我想先说说自己对类的理解:类是一个抽象体,他封装了一大类个体的共同属性和行为,类的建立是以抽象为基础的,而抽象是建立在个体的属性和行为之上的,先有了个体然后才有了以多个个体为基础抽象出来的类。 策略模式:它定义了一个算法家族,原创 2012-03-05 07:59:06 · 769 阅读 · 1 评论 -
关于设计原则
---------------------- android培训、java培训、期待与您交流! ---------------------- 原则是事物产生和存在的前提,事物的发展和运行都需要遵循一定的原则,原则一经确立与之相关的事物就必须遵循,如果不遵守最终就会被淘汰。 设计原则就是在进行设计之前必须了解并且在设计的过程中必须遵守的,不遵守设计原则的设计是不规范的,最终将会被原创 2012-03-05 07:42:54 · 600 阅读 · 0 评论 -
JAVA学习——数组
JAVA学习——数组---------------------- android培训、java培训、期待与您交流! ---------------------- 数组是用来存储同一类型数据的集合,她其实是一个容器。与其他容器相比她自动给包含其中的元素从0开始编号。一、数组的内存结构计算机中的内存分为“栈”和“堆”。“栈”中存储的是基本数据类型变量和变量的引用,当“栈原创 2012-03-05 17:24:17 · 584 阅读 · 0 评论 -
JAVA学习——IO操作(二)
JAVA学习——IO操作(二)---------------------- android培训、java培训、期待与您交流! ----------------------System类:System 类包含一些有用的类字段和方法,它不能被实例化。与IO相关的有标准输入in(默认的是键盘)、标准输出(默认是控制台)和错误输出流。例子程序:原创 2012-03-07 00:07:14 · 640 阅读 · 0 评论 -
Java 学习--网络编程(一)
Java 学习--网络编程(一)一、网络通信的要素。1、 IP。网络通信首先要找到通讯方的IP地址,在网络当中IP是连接在网络中的计算机的唯一标识。2、 端口。数据要发送到对方指定的应用程序上,为了达到准确无误,将这些网络应用程序进行数字标识,这些数字标识就称为端口具体来说是逻辑端口。3、 通讯协议。规定了双方进行通讯时需要遵守的规则。主要学习TCP/IP协议与UDP/IP协原创 2012-03-25 21:40:30 · 743 阅读 · 0 评论 -
迷宫算法(JAVA实现)
迷宫算法(JAVA实现)对于走迷宫,人们提出过很多计算机上的解法。深度优先搜索、广度优先搜索是使用最广的方法。生活中,人们更愿意使用“紧贴墙壁,靠右行走”的简单规则。下面的代码则采用了另一种不同的解法。它把走迷宫的过程比做“染色过程”。假设入口点被染为红色,它的颜色会“传染”给与它相邻的可走的单元。这个过程不断进行下去,如果最终出口点被染色,则迷宫有解。在以下程序中“#”代表不可通原创 2012-03-17 22:54:17 · 10703 阅读 · 0 评论 -
JAVA学习——IO操作(四)——缓冲处理流
JAVA学习——IO操作(四)——缓冲处理流 缓冲处理流包括:BufferedInputStream,BufferedOutputStream,BufferedReader,BufferedWriter。(处理流类均是采用装饰模式进行设计的) BufferedInputStream与BufferedOutputStream是一个带有缓冲区域的InputS原创 2012-03-11 14:26:41 · 1878 阅读 · 0 评论 -
寻找兔子算法(java实现)
寻找兔子算法今天偶然看到一个小学时经常看到的数学题目,算法很新颖(我自己给他命名为寻找兔子算法),所以就用java实现了一下,实现的很简单纯属自娱,如果你也感觉算法很巧妙请支持一下···题目描述:已知有鸡和兔15只,共有40只脚,问鸡和兔各有几只?算法:假设鸡和兔训练有素,吹一声哨,它们抬起一只脚,40-15=25。再吹一声哨,它们又抬起 一只脚,25-15=10,这时原创 2012-03-12 23:24:48 · 1888 阅读 · 4 评论 -
JAVA学习——容器(概述)
JAVA学习——容器(概述)容器是用来存储对象的工具,容器不可以存储基本类型,因为基本类型保存在栈中随时都可能被清除。数组与集合的不同:1、数组虽然可以存储对象但是其中的对象必须是属于同一类型的,而容器是可以包含不同的对象类型的。2、数组是固定长度的,其长度在定义时就已经固定不可以改变,容器的大小是可动态改变的。3、数组可以存储基本类型而容器只可以存储对象。 容器家原创 2012-03-08 11:30:40 · 955 阅读 · 0 评论 -
JAVA学习——内部类
JAVA学习——内部类一、内部类的访问规则。1、 内部类可以直接访问外部类的成员,包括私有成员,原因是:内部类中持有一个外部类的引用,格式为:外部类名.this。2、 外部类访问内部类必须建立内部类对象。3、 当内部类定义在直接外部类的成员位置上,而且是非私有成员,可以在间接外部类中引用内部类,其格式为:直接外部类名.内部类名 对象名= new直接外部原创 2012-03-19 06:43:36 · 919 阅读 · 0 评论 -
JAVA学习—IO—转换流
JAVA学习—IO—转换流 转换流是指将字节流与字符流之间的转换,包含两个类:InputStreamReader和OutputStreamWriter。 转换流的出现方便了对文件的读写,她在字符流与字节流之间架起了一座桥梁,使原本毫无关联的两种流操作能够进行转化,提高了程序的灵活性。 InputStreamReader的构造操作:InputSt原创 2012-03-11 15:07:55 · 6894 阅读 · 0 评论 -
java中的静态变量和实例变量的生命周期
类的成员变量有两种:一种是被static关键字修饰的变量,叫类变量或静态变量,一种是没有被static修饰的,叫做实例变量 。 静态变量和实例变量的区别在于: 类静态变量在内存中只有一个,java虚拟机在加载类的过程中为静态变量分配内存,静态变量位于方法区,被类的所有实例共享,静态变量可以通过类名直接访问。静态变量的生命周期取决于类的生命周期,当类被加载的时候,静态变量被创建原创 2012-07-27 16:19:41 · 5125 阅读 · 1 评论