文章列表
const类型定义:指明变量或对象的值是不能被更新,引入目的是为了取代预编译指令
**************常量必须被初始化*************************
cons的作用
(1)可以定义const常量 例如:
const int Max=100;
...
java.lang.Object的约定如下:
1,在程序的同一执行期间,如果equals方法的信息不给修改,那么对同一对象多次调用hashcode得出的值也是必须一样。但是不要求在不同的执行期间保持一致
2,如果两个对象的equals()方法等同,那么两对象任何一个调用hashCode()方法,必须产生同样的结果。
3,如果两对象的equals()方法不相等,那么对两对象的任意对象调用hashCode()方法,不要求产生两个不同的整数结果
hashcode 就仿佛是一个Object的ID,如果说它有什么特别,那就是它是一个int类型的值。在所有对象的运算中,int是最快(当然最快的是cha ...
1. 标准库支持wchar_t类型的IO类,在每个类前加“w”前缀即可。文件流的头文件为fstream。string流的头文件为sstream。
2. IO对象不能复制和赋值,因为只有支持复制的元素类型才能存储在vector容器和其他容器中,故流对象不能存储在vector和其他容器中。流对象也不能作为函数形参和返回类型。如果要传递和返回IO对象,只能返回指向对象的引用或者指针。
3. IO标准库管理一系列的条件状态,用来标记给定的IO对象是否处于可用状态。
4. 流必须处于无错误状态,才可以用于输入或者输出。检查流是否可用的最简单方法是检查它的真值:
if(cin)
while(cin>& ...
1. 函数不能返回另一个函数或者内置数组类型,但可以返回指向函数的指针,或者指向数组元素的指针的指针。
2. 早期的C/C++在声明时可以不指定返回类型,如果缺少显示返回类型,函数的返回值将被假定为int型。现在标准的C++ ...
标准库提供的 find 运算:
// value we'll look for
int search_value = 42;
// call find to see if that value is present
vector<int>::const_iterator result =
find(vec.begin(), vec.end(), search_value);
// report the r ...
[url]http://blog.csdn.net/majorboy/archive/2005/09/09/475811.aspx
[/url]
Volatile修饰的成员变量在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。
Java语言规范中指出:为了获得最佳速度,允许线程保存共享成员变量的私有拷贝,而且只当线程进入或者离开同步代码块时才与共享成员变量的原始值对比。
这样当多个线程同时与某个对象交互时,就必须要注意到要让线程及时的得到共享成员变量的变化。 ...
全局变量包含在类对象中,因为所有的对象都在堆上生成,所以全局变量是随对象放在堆上的。
但,方法中的局部变量就不一样了,它们被放在方法栈的栈帧中(注意,如果在方法中生成对象,该对象一样在堆中创建,不过引用该对象的引用变量是放在栈帧中的)
所有的对象都是在堆上创建(Class对象除外),即使是在方法中创建的对象也是这样。
每一个线程都有自己独立的栈和程序记数器,所有线程都共享方法区和堆!
静态变量放在方法区中。每个类都有一个对应的Class对象,静态变量放在它所属的类的Class对象中。Class对象放在方法区中。也就是说,静态变量也被放在方法区了。
如果静态变量是一个引用变量,它 ...
(1)静态方法同步问题:
Every method of java will have a stack, and every invokation on that method will have it's own 'stack frame'. So the locale data of one method invokation will not affect others.
Please do not confuse 'synchronization' with 'atomic'.
If one static method is synchronized, JVM ...
本贴来自天极网群乐社区--http://q.yesky.com/group/review-9259291.html
栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。
Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用 ...
- 2009-10-14 20:43
- 浏览 723
- 评论(0)
此文章虽然是面向C/C++程序员写得,但是对咱们Java程序员还是很有帮助的。
堆和栈的区别
一、预备知识—程序的内存分配
一个由C/C++编译的程序占用的内存分为以下几个部分
1、栈区(stack)— 由编译器自动分配释放 ,存放 ...
- 2009-10-14 20:26
- 浏览 1005
- 评论(0)
有关数据库名,实例名,网络服务名和服务名的概念理解,请指正!
--数据库实例名(INSTANCE_NAME)----------------
数据库实例名是用于和操作系统之间的联系,也就是说用于对外连接,操作
系统与数据库交互,必须使用数据库实例 ...
- 2009-08-08 14:50
- 浏览 882
- 评论(0)
比较orale的tnsping与TCP/IP的ping命令:
-----------------------------------------------------------------------------
Oracle Net 工具(命令)tnsping,是一个OSI会话层的工具,它用来:
1)验证名字解析(name resolution,当然是oracle自己 ...
- 2009-08-07 15:51
- 浏览 934
- 评论(0)
function method2(tableid) //读取表格中每个单元到EXCEL中
{
var curTbl = document.getElementById(tableid);
try {
var oXL = new ActiveXObject("Excel.Application");
}
catch(e)
{
alert( "您必须安装Excel2000或以上,同时浏览器须使用“ActiveX 控件”,您的浏览器须允许执行控件。请选择 ...
- 2009-08-06 21:25
- 浏览 3263
- 评论(0)