一:泛型简介:
(1)所谓泛型,就是变量类型的参数化。
泛型是JDK1.5中一个最重要的特征。通过引入泛型,我们将获得编译时类型的安全和运行时更小的抛出ClassCastException的可能。在JDK1.5中,你可以声明一个集合将接收/返回的对象的类型。使用泛型时如果不指明参数类型,即泛型类没有参数化,会提示警告,此时类型为Object。
(2)为什么使用泛型
使用泛型的典型例子,是在...
Java API针对集合类型排序提供了两种支持:
java.util.Collections.sort(java.util.List)java.util.Collections.sort(java.util.List, java.util.Comparator)
第一个方法要求所排序的元素类必须实现java.lang.Comparable接口;第二个方法要求实现一个java.u...
多线程之线程同步Mutex (功能与Critial Sections相同,但是属于内核对象,访问速度较慢,可以被不同进程调用)
一 Mutex
互斥对象(mutex)内核对象能够确保线程拥有对单个资源的互斥访问权。实际上互斥对象是因此而得名的。互斥对象包含一个使用数量,一个线程ID和一个递归计数器。
互斥对象的行为特性与关键代码段相同,但是互斥对象属于内核对象,而关键代码...
使用g++编译c++11的多线程,编译通过运行出错,其实是编译器的bug。...
只要基类在定义成员函数时已经声明了virtue关键字,在派生类实现的时候覆盖该函数时,virtue关键字可加可不加,不影响多态的实现。
容易与隐藏混淆:
隐藏是指派生类的函数屏蔽了与其同名的基类函数,规则如下:
1) 如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。
2) 如果派生类的函数与基类的函...
在Ubuntu中安装numpy、scipy、matplotlib、OpenCV等
和Python(x,y)不一样,在Ubuntu中需要手工安装科学计算的各个模块,
如何安装IPython, NumPy, SciPy, matplotlib, PyQt4, Spyder, Cython, SWIG, ETS, OpenCV:
在Ubuntu下安装Python模块通常可以使用apt-ge...
执行Java -jar somefile.jar时发生了什么(一)...
Spring的持久化用于简化数据的操作。
数据源
数据源有多种类型:JNDI、连接池、JDBC。
JNDI的配置方法。例子中使用Tomcat作为Web容器。首先要在context.xml中加上下面这段代码。
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
...
0.背景 在看APUE第七章的时候,作者分析了setjmp和longjmp这种函数间跳转机制对不同存储类型变量的影响,看到register,auto,volatile,static等等这些关键字很模糊,也可能太少用了,但是自认为C语言基础不错的我还是不能接受任何不懂的知识点,于是就捋了捋思路。1.....
有下面一个继承体系,我们需要为其添加"=="操作符,该怎么办呢 ??class Animal{};class Cat : public Animal{};class Dog : public Animal{};如果我们为每个类重载"=="运算符,那么我们还需要重载子类与基类之间的"=="运算符,这样...