java复习(2)
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)的更多相关文章
- java 复习003 之排序篇
由java 复习003跳转过来的C语言实现版见some-sort-algorithms 快速排序(不稳定 O(n log n)) package vell.bibi.sort_algorithms; ...
- java 复习001
java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...
- java复习(1)---java与C++区别
[系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...
- Java复习11. 单例编程
Java复习11. 单例编程 1.最简单的写法,那个方式是线程不安全的 public class Singleton { private static Singleton instance; ...
- Java复习9网路编程
Java 复习9网路编程 20131008 前言: Java语言在网络通信上面的开发要远远领先于其他编程语言,这是Java开发中最重要的应用,可以基于协议的编程,如Socket,URLConnecti ...
- Java复习8.多线程
Java复习8 多线程知识 20131007 前言: 在Java中本身就是支持多线程程序的,而不是像C++那样,对于多线程的程序,需要调用操作系统的API 接口去实现多线程的程序,而Java是支持多线 ...
- Java复习10.Servlet编程
Java复习10. Servlet编程知识 20131008 前言: 之前在大三下的时候,学习了一个月的JSP和Servlet知识,但是没有什么项目经验,把JSP Web开发学习实录看了前面几张,后面 ...
- Java复习6异常处理
Java复习6.异常处理 20131005 前言: Java中的异常处理机制是非常强大的,相比C++ 来说,更加系统.但是我们开发人员没有很好的使用这一点.一些小的程序是没有什么问题的,但是对于大型项 ...
- Java复习4.数组初始化.
Java复习4.Java中的数组声明方式 20131004 1.数组声明和初始化, 数组元素和变量一样,可以在定义的时候i进行初始化.数组元素的初始化工作实在编译阶段完成的,可以减少运行时间. 在初 ...
- Java复习7.输入输出流
Java复习7.输入输出流 20131005 前言: Java中涉及数据的读写,都是基于流的,这一块的知识相当重要,而且在Java中的数据,char字符是16bit的,所以存在字节流和字符流的区别.如 ...
随机推荐
- 分布式-信息方式-ActiveMQ的消息存储持久化
ActiveMQ的消息存储持久化■概述ActiveMQ不仅支持 persistent和 non-persistent两种方式,还支持消息的恢复( recovery)方式PTPQueue的存储是很简单的 ...
- Mybaits 分页插件应用
mybaits 分页插件省去了很多麻烦,接下来介绍如果应用分页插件 1.首先导入pagehelper.jar和jsplparser 2 在mybaits.xml中配置 <plugins> ...
- IDEA打开最近打开的项目以及关闭项目
关闭的是当前项目
- CSS + ul li 横向排列的两种方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 通过jenkins-Python在后台操作Jenkins构建job
最近要开发1个接口,接收到1个指令后自动触发自动化测试,虽然也可以通过shell命令做这一步,但因为目前所有构建自动化的的动作都通过jenkins完成,所以想要尝试能不能用python去控制jenki ...
- 【Python】格式化输出json
参考文档: Python JSON JSON 函数 使用 JSON 函数需要导入 json 库:import json. 函数 描述 json.dumps 将 Python 对象编码成 JSON 字 ...
- springboot之RocketMq实现
环境:win10 1.下载安装包 http://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.4.0/rocketmq-all-4.4.0-bin-re ...
- flutter image_picker
点击选中图片,底部弹窗让用户选择使用相册还是相机,用户选中选项后,跳转到对应的相册或者相机功能,结果将图片显示出来 image_picker: ^0.6.1+4 iOS使用image_picker需要 ...
- wpf prism4 出现问题:无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性。
WPF Prism 框架 程序 出现 问题: 无法加载一个或多个请求的类型.有关更多信息,请检索 LoaderExceptions 属性. 1.开始以为是配置的问题,找了半天,最后原来是有个依赖类库没 ...
- OpenStack 制作image,启动VM,无console log
OpenStack image 制作官方文档:https://docs.openstack.org/image-guide/create-images-manually.html 如果通过制作的镜像启 ...