java与c++的区别
//1.Java中字符串不能多行书写。多行书写用引号隔断,加号相连。
//2.Java的标识符可以用美元符号开头。
//3.Java中没有无符号变量或无符号常量的概念。所有的变量都是有符号的。
//4.Java中变量的字长是固定的。不存在char和wchar之分。
//5.Java中变量未初始化就使用将是编译错误。
//6.Java中不能把0和非0整数当boolean值用。要使一个整型变量在0和1之间交替变化,不能用非运算,可以这样。int x=0;x=(x+1)%2;
//java的类型检查比C++严格。byte b=3;b=b-1;是错误的。非运算符(!)只能对boolean数据操作。
//7.Java中变量不能嵌套定义,即子块变量名不能与父块变量名同名。但类成员函数中的局部变量可以隐藏类成员变量,即二者可以有相同的名字。
//8.Java中没有全局变量和全局函数,相应功能由类中的static成员代替。全局常量加public static final标记。
//9.Java中函数的参数如果是基本数据类型,使用的是传值调用。其他自定义类型是传地址(句柄)调用。
//10.对象的句柄之间赋值,只能让两个句柄指向同一个对象,对象的内存不会被复制。也不存在运算符重载,字符串重载加号是系统实现的特例。没有拷贝构造函数的概念。因此,继承是很单纯和简单的。
//11.Java的左移位运算分带符号左移>>和不带符号左移>>>。byte,short,char的移位运算自动提升为int再移位。
//12.Java没有goto语句,但有goto保留字。
//13.Java数组也是在堆内存中分配的,并且是对象.int[] intArray = new int[100]; 中括号可以写在数组名的前面。 这样是错误:int a[5];
//奇怪的是,这种堆上创建的数组大小也不可改变。
//14.Java中没有真正的多维数组,只有数组的数组,且可能是不规则的矩阵形式。
/*
int xx[][];
&nb
相关文档:
/*
* test.cpp
*
* Created on: 2010-5-13
* Author: Sarah
*/
#include "/usr/include/mysql/mysql.h" /*为绝对路径*/
#include <stdio.h>
#include <stdlib.h>
#i ......
java工厂模式的学习,初期的时候在网上查了很多例子,自己始终只能构建简单工厂,后来终于找到了下面这份文档才对工厂模式有了一个全面的理解,并且为此文档的抽象工厂提供了实例:
JAVA工厂模式
看了这么多关于工厂模式的讲解,还是觉得这篇文章讲的好理解,贴出来和大家分享分享。
一、引子
  ......
//cExample.h
#ifndef C_EXAMPLE_H
#define C_EXAMPLE_H
#ifdef __cplusplus
extern "C"
{
#endif
int add(int x, int y);
#ifdef __cplusplus
}
#endif
#endif
---------------------------------
//cExample.c
#include"cExample.h"
int add(int x, int y)
{
return x + y;
}
----------------- ......
记得大学毕业找工作时,面官经常问的就是说说“==与equals”的区别,胡乱答一通。今天看一下原理吧。
什么时候需要重写equals()?
我们知道每一个java类都继承自Object类,equals()是Object类中提供的方法之一。那么,让我们先来看看Object#equals()在Java中的原代码:
public boolea ......