1.函数的重载:在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不相同就可以。

          重载与返回值类型无关,只看参数列表。重载方便阅读,优化了程序的设计

          eg://返回两个 整数值的和

          int add(int x,int y){return x+y;}

          //这个地方是返回三个小数的和

          int add(int x ,int y , int z){return x+y+z;}

          //返回两个小数的和

          double add(double x,double y){return x+y;} 

2.数组:一维数组

  同一种类型数据的集合。数组就是一个容器

    数组的好处:可以自动给数组中的元素从0开始进行编号,方便对这些元素进行操作。

    格式1:元素类型[] 数组名= new 元素类型[元素个数或者数组的长度]

        int[] arr = new int[5];

    格式2:元素类型[] 数组名 = new 元素类型[]{元素,元素,。。。。。。。};

        int[] arr = new int[]{3,5,1,7};

        int[] arr = {3,5,1,7};

  二维数组[][]:

    格式1:int[][] arr = new int[3][2];

    定义了一个二维数组

    二维数组中有三个一维数组

    每个一维数组中有2个元素

    一维数组的名称分别是:arr[0],arr[1],arr[2]

    给第一个一维数组1脚标位赋值为78的写法是:arr[0][1]=78;

    格式2:int[][] arr = new int[3][];

      二维数组中有3个一维数组

      每个一维数组默认初始化值为null

      可以对这个三个一维数组分别进行初始化

      arr[0] = new int[3];

      arr[1] = new int[1];

      arr[2] = new int[2];

    格式3:int[][] arr = {{3,8,2},{2,7},{9,0,1,6}};

      定义一个名称为arr的二维数组

      二维数组中有3个一维数组

      每一个一维数组找那个具有元素也都已经初始化

      第一个数组为arr[0] = {3,8,2};

      第二个数组arr[1] = {2,7};

      第三个数组arr[2]={9,0,1,6}

      第三个一维数组的长度表示方式:arr[2].length;

3.我们知道java程序在运行的时候,需要在内存中进行空间的分配。为了提高运算的效率,对内存空间进行区域的划分,以为每一片区域都有特定的数据处理方式和内存的管理方式。

栈内存

------------------------------

  用于存储局部变量,当数据使用完的时候,所占用的内存会自动的释放

堆内存

-----------------------------------

  用于存放对象和数组,通过new所建立的实例都会存放在堆内存中。

  每一个实体都有堆内存地址值

   实体中的变量都有默认初始化值

  实体不在被使用,会在不确定的时间内被垃圾回收期进行回收

还有方法区、本地方法区以及寄存器

java复习(2)的更多相关文章

  1. java 复习003 之排序篇

    由java 复习003跳转过来的C语言实现版见some-sort-algorithms 快速排序(不稳定 O(n log n)) package vell.bibi.sort_algorithms; ...

  2. java 复习001

    java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...

  3. java复习(1)---java与C++区别

    [系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...

  4. Java复习11. 单例编程

    Java复习11. 单例编程 1.最简单的写法,那个方式是线程不安全的 public class Singleton {     private static Singleton instance; ...

  5. Java复习9网路编程

    Java 复习9网路编程 20131008 前言: Java语言在网络通信上面的开发要远远领先于其他编程语言,这是Java开发中最重要的应用,可以基于协议的编程,如Socket,URLConnecti ...

  6. Java复习8.多线程

    Java复习8 多线程知识 20131007 前言: 在Java中本身就是支持多线程程序的,而不是像C++那样,对于多线程的程序,需要调用操作系统的API 接口去实现多线程的程序,而Java是支持多线 ...

  7. Java复习10.Servlet编程

    Java复习10. Servlet编程知识 20131008 前言: 之前在大三下的时候,学习了一个月的JSP和Servlet知识,但是没有什么项目经验,把JSP Web开发学习实录看了前面几张,后面 ...

  8. Java复习6异常处理

    Java复习6.异常处理 20131005 前言: Java中的异常处理机制是非常强大的,相比C++ 来说,更加系统.但是我们开发人员没有很好的使用这一点.一些小的程序是没有什么问题的,但是对于大型项 ...

  9. Java复习4.数组初始化.

    Java复习4.Java中的数组声明方式  20131004 1.数组声明和初始化, 数组元素和变量一样,可以在定义的时候i进行初始化.数组元素的初始化工作实在编译阶段完成的,可以减少运行时间. 在初 ...

  10. Java复习7.输入输出流

    Java复习7.输入输出流 20131005 前言: Java中涉及数据的读写,都是基于流的,这一块的知识相当重要,而且在Java中的数据,char字符是16bit的,所以存在字节流和字符流的区别.如 ...

随机推荐

  1. sqli-labs(39)

    0X01 这关和38关一样 ?id= and =1 正确 ?id=1 and 1=2 错误 不需要闭合 构造语法 0X02 ?id=;insert into users values(,"z ...

  2. IntelliJ IDEA 常用快捷键整理

    1. -----------自动代码--------  常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 例如要输入for( ...

  3. 顺序表栈C语言实现

    /* * SeqStack.h * * Created on: 2019年8月1日 * Author: Administrator */ #ifndef SEQSTACK_H_ #define SEQ ...

  4. 移动端 iphone手机在中文情况下不执行keyup事件

    问题:移动端 在

  5. html_javascript 基础操作

    <!DOCTYPE html> <html> <body> <h1>My Web Page</h1> <p id="demo ...

  6. jQuery .submit()

    .submit() Events > Form Events | Forms .submit( handler )Returns: jQuery Description: Bind an eve ...

  7. 源码编译apache出错

    报错信息如下 exports.c:1572: error: redefinition of `ap_hack_apr_allocator_create' exports.c:177: error: ` ...

  8. day3_Python基础三

    参考:http://www.cnblogs.com/jin-xin/articles/7562422.html 一.数据类型 1.1.int:用于计算,不可变,可哈希 数字主要是用于计算用的: #bi ...

  9. Android 动态申请权限

    AndroidManifest.xml(清单文件)添加需要的权限 <uses-permission android:name="android.permission.ACCESS_CO ...

  10. mysql--创建表,插入数据,修改表名,删除表,简单查询/内连接、左/右连接

    创建表mm:  其中id为主键且自增长 ) primary key not null unique auto_increment, name ) not null, age ), class ) no ...