您的位置:首页 > 其它

2013年8月13日、 重载|数组|内存的划分|栈内存、堆内存

2013-08-13 23:10 363 查看
/*

需求:函数的重载。 

*/

class FunctionDemo

{
public static void main(String[] args) 
{

// add(4,6,9);

// System.out.println("Hello World!");
printCFB(7);
}

/*
函数的重载。

1,同一个类,
2,同名。
3,参数个数不同。or 参数类型不同。
4,函数重载和返回值类型无关。
5,java是严谨性语言,如果函数出现的调用的不确定性,会编译失败。

*/

//加法运算。两个整数的和。
public static int add(int a,int b)
{
return a+b;
}

//加法运算。两个小数的和。
public static double add(double a,double b)
{
return a+b;
}

//加法运算,三个整数的和。 
public static int add(int a,int b,int c)
{
return add(a,b)+c;
}

/*
打印乘法表。
*/
public static void printCFB(int num)
{
for(int x=1; x<=num; x++)
{
for(int y=1; y<=x; y++)
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();
}
}

/*
打印标准乘法表。
*/
public static void printCFB()
{
printCFB(9);
}

}

————————————————————————

class ArrayDemo 

{

public static void main(String[] args) 
{
//元素类型[] 数组名 = new 元素类型[元素个数或数组长度];

{//局部代码块。限定局部变量的生命周期。
int age = 3;
System.out.println(age);
}

int[] arr = new int[3];

// arr[0] = 89;
System.out.println(arr[0]);
for(int x=0; x<4; x++){}

}

}

/*

内存的划分:

1,寄存器。

2,本地方法区。

3,方法区。

4,栈内存。
存储的都是局部变量。
而且变量所属的作用域一旦结束,该变量就自动释放。

5,堆内存。
存储是数组和对象(其实数组就是对象) 凡是new建立在堆中。
特点:
1,每一个实体都有首地址值。
2,堆内存中的每一个变量都有默认初始化值,根据类型的不同而不同。整数是0,小数0.0或者0.0f,boolean false char '\u0000'
3,垃圾回收机制。 

--------说明java的内存转换机制比C++手动处理好!

*/

——————————————————————————————————————————————————————-

class ArrayDemo2 

{
public static void main(String[] args) 
{
int[] arr = new int[3];

// System.out.println(arr[3]);//ArrayIndexOutOfBoundsException:
//当访问到数组中不存在的角标时,就会发生该异常。

// arr = null;

// System.out.println(arr[0]);//NullPointerException

// 当引用型变量没有任何实体指向时,还在用其操作实体。就会发生该异常。 

// System.out.println(arr);//  [I@c17164

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  2013年8月13日