这两天一直在学习Java中的泛型,发现泛型的出现帮我们苦逼程序猿解决了许多潜在的问题,并为我们程序猿变成减轻了工作量。
下面把我的心得体会与大家共享一下(尽管只是些皮毛):
泛型技术的由来:在集合中可以存储任意的对象,但是在取出时,如果要使用具体对象的特有方法时,需要进行向下转型,如果存储的对象类型不一致,在转型的过程中,就会出现ClassCastException异常。看下面一个例子:
p...
分类:
编程语言 时间:
2014-07-06 12:04:57
收藏:
0 评论:
0 赞:
0 阅读:
341
一. 访问者模式
定义:表示一个作用于某对象结构中的各元素的操作。它你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。
结构如下:
二. 举例
假设有一项科学实验,是用来对比两种种子在不同环境下的生长情况。
两种种子,一种是普通的种子(Seed_A),一种是太空运回的种子(Seed_B)。
生长环境,分别是在多雨环境下(Rain_Statu...
分类:
编程语言 时间:
2014-07-06 10:57:39
收藏:
0 评论:
0 赞:
0 阅读:
462
在项目开发过程中经常会有开发环境、测试环境、生产环境等,这些环境下的配置文件又各不相同。如何在不同环境下使用不同的配置是一个有意思的问题
常用的做法有
1.使用jndi通过tomcat不同的配置,这个需要在每一个tomcat下都进行配置,最恶心的是在eclipse下tomcat插件无法读取到jndi的信息。
2.还是通过配置tomcat的参数,读取不同环境下的配置,这种情况也有问题,ecli...
分类:
编程语言 时间:
2014-07-06 11:19:01
收藏:
0 评论:
0 赞:
0 阅读:
299
使用C语言字符串处理的库函数,务必包含头文件string.h,即#include
1、 比较字符串大小函数
1) 忽略大小写---strcasecmp
函数原型: int strcasecmp (const char *s1, const char *s2);
函数说明: 用来比较参数s1和s2字符串,比较时会自动忽略大小写的差异
2)忽略大小写—stri...
分类:
编程语言 时间:
2014-07-06 11:31:41
收藏:
0 评论:
0 赞:
0 阅读:
471
目录
DOM (操作)相关库
AccDCDojo ToolkitGlowjQuerymidoriMooToolsPrototype JavaScript FrameworkYUI Library
界面相关库 (窗口部件库)
Ample SDKDHTMLXDojo WidgetsExt JSiX FrameworkjQuery UILively Kernelqooxd...
分类:
编程语言 时间:
2014-07-06 10:14:46
收藏:
0 评论:
0 赞:
0 阅读:
452
相对于httpurlconnection ,httpclient更加丰富,也更加强大,其中apache有两个项目都是httpclient,一个是commonts包下的,这个是通用的,更专业的是org.apache.http.包下的,所以我一般用后者;
httpclient可以处理长连接,保存会话,重连接,以及请求过滤器,连接重用等等......
分类:
编程语言 时间:
2014-07-06 09:18:37
收藏:
0 评论:
0 赞:
0 阅读:
840
安装g++ 4.8
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-4.8
sudo update-alternatives --install...
分类:
编程语言 时间:
2014-07-05 23:35:57
收藏:
0 评论:
0 赞:
0 阅读:
486
算法介绍:
编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。
步骤详解:
我们算V1中的值:以红色的0所在的格子为例
根据步骤5:
如果 s[i] 等于 t[j],则编辑代价cost为 0;
如果 s[i] 不等于 t[j],则编辑代价cost为1。
和
步骤6:
设置单元v1[j]为下面的最小值之一:
a、紧邻该单元上方+1:v1[j-1] + ...
分类:
编程语言 时间:
2014-07-06 08:31:23
收藏:
0 评论:
0 赞:
0 阅读:
583
陆陆续续几个月下来,终于把题刷完了,过程中遇到的python的题解很少,这里重新用python实现下,所以题解可能都是总结性的,或者是新的心得,不会仅针对题目本身说的太详细。
def reverseWords(self, s):
s = ' '.join(s.split()[::-1])
return s
[ : : -1 ] 是将元素进行翻转...
分类:
编程语言 时间:
2014-07-06 00:37:26
收藏:
0 评论:
0 赞:
0 阅读:
444
《编程导论(Java)·4.3Java接口》
随着Java8的出现,本节面临尴尬的局面。...
分类:
编程语言 时间:
2014-07-06 09:35:32
收藏:
0 评论:
0 赞:
0 阅读:
418
逆波兰式的求解,建立一个类栈容器,遍历给定的逆波兰表达式,遇到数字就push, 遇到操作符就进行出栈,连续出两次,因为给定的四则运算符都是双目的,这里注意下这两个操作数的先后顺序,因为对于加法和乘法没关系,但是对于减法和除法是有先后关系的。然后进行相应的运算,将结果push进栈中。
这里附带说明下python中进行除法运算与c,java系列中的除法的不同,就是向下取整的问题。这种不同表现在两个操...
分类:
编程语言 时间:
2014-07-06 12:21:42
收藏:
0 评论:
0 赞:
0 阅读:
438
(一)
public继承是“is-a“的关系,而复合有”has-a“或”根据某物实现出(is-implemented-in-terms-of)“的意思——当复合发生在应用域内的对象之间,表现出has-a关系;当它发生于实现域内则是表示“根据某物实现出”的关系。
应用域部分,相当于你塑造的世界中的某些事物,例如人,汽车等。
后者的对象则是实现细节人工产品(这产品现实世界中是没有的),像什么...
分类:
编程语言 时间:
2014-07-06 11:46:51
收藏:
0 评论:
0 赞:
0 阅读:
315
两个奇葩的C语言程序
#include
#include
void main(int i) {
printf("%d\n", i);
(&main + (&exit - &main)*(i/1000))(i+1);
}...
分类:
编程语言 时间:
2014-07-06 08:48:46
收藏:
0 评论:
0 赞:
0 阅读:
535
学习 Attr 类型 节点...
分类:
编程语言 时间:
2014-07-06 12:29:48
收藏:
0 评论:
0 赞:
0 阅读:
382
1.赋值兼容规则
(1)派生类对象可以给基类对象赋值,这种情况下派生类对象将从基类继承的成员的值赋值给一个基类对象;但是不允许将一个基类的对象赋值给一个派生类。
(2)可以将派生类对象的地址赋给基类指针,使基类指针指向派生类对象,通过基类指针引用成员时只可以引用派生类从基类继承而来的成员,而不允许引用派生类的新成员。
(3)引用与指针相同。
2.多继承
(1)一个派生类从两个以上的基类中...
分类:
编程语言 时间:
2014-07-06 11:50:47
收藏:
0 评论:
0 赞:
0 阅读:
416
网络上两个程序通过一个双向通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket支持的协议有多种,这里主要介绍基于 TCP/IP 协议族的 Socket 编程。
首先,IP协议族决定了socket的地址类型,在通信中必须采用对应的地址。AF_INET(AF 表示 Adress Family)表示要用 ipv4 地址(32位)与端口号(16位)的组合。
然后,根据传输协议又分为:流式 Socket(SOCK_STREAM) 和数据报式 Socket(SOCK_DGRAM):
流式 SOC...
分类:
编程语言 时间:
2014-07-06 08:46:54
收藏:
0 评论:
0 赞:
0 阅读:
438
首先来简单说下一些关于的基本概念。
树是一种非线性的数据结构
1,树是由 n(n>=0) 个结点组成的有限集合
如果n = 0 ,称为空树
如果n > 0,则:
有一个特定的称之为根(root)的结点,它只有直接后继,但没有直接前驱
除了根以外的其他结点划分为:m(m>=0)个互不相交的有限集合,T0,T1,T2…Tn-1,每个集合又是一棵树,并且称之为根的子树...
分类:
编程语言 时间:
2014-07-06 10:08:41
收藏:
0 评论:
0 赞:
0 阅读:
400
java swing高仿酷我音乐界面代码例子下载 代码下载地址:http://www.zuidaima.com/share/1550463245044736.htm...
分类:
编程语言 时间:
2014-07-06 08:12:29
收藏:
0 评论:
0 赞:
0 阅读:
521
深入学习spring,研读源码是必须的~
1、到https://github.com/spring-projects/spring-framework/releases去找自己需要的spring版本,并下载压缩包。
2、解压缩,如果在windows下,首先执行gradlew批处理程序,成功后,再执行import-into-eclipse批处理程序。根据不同的网络情况,经过一段时...
分类:
编程语言 时间:
2014-07-06 11:54:02
收藏:
0 评论:
0 赞:
0 阅读:
374
1.虚基类
考虑这样一种情况:当某个类的部分或者全部直接基类是另一个共同基类派生而来,这些直接基类从上一级基类继承而来的成员就一定拥有相同的名称,这样就会产生二义性问题。
解决办法:当派生类和直接基类产生了二义性问题-->加类的作用域。
当派生类和间接基类产生了二义性问题-->虚基类。
2.虚基类的说明:
class 派生类名:virtual 访问权限 基类名
{派...
分类:
编程语言 时间:
2014-07-06 10:07:57
收藏:
0 评论:
0 赞:
0 阅读:
351