java学习day6-二维数组和面向对象的内存分配

原创 2018年04月17日 13:57:56

1.二维数组的定义:元素是一维数组的数组

格式: 数据类型[][] 数组名 = new 数据类型[m][n]

         数据类型[][] 数组名 = new 数据类型[m][];

         数据类型[][] 数组名 = new 数据类型[][]{{...},{...},{...}};

         数据类型[][] 数组名 = {{...},{...},{...}};


2.二维数组在内存中的分配

二维数组是一个引用类型,引用类型是个对象,对象的默认值为null

定义二维数组时,会在堆内存为其分配内存空间(必须知道二维数组的行数,即一维数组的个数,才能够为其分配内存空间),首先给一个地址值0x001给arr,然后为二维数组里的一维数组分配内存空间,分别给一个地址值给一维数组,即0x0001给arr[0],0x0002给arr[1],0x0003给arr[2]。如果arr[3][]第二个元素值没有给出(相当于里面的一维数组的元素个数不知道),即以格式2定义二维数组,那么就无法为一维数组静态的分配内存空间了,即打印出来的arr[0],arr[1],arr[2]地址值是默认值null,可以动态的为其分配内存空间

         内存分配图:

  




3.面向对象

  类:成员变量 -定义在类中,方法之外

         成员方法- public void xxx() 

面向对象在内存中的分配


  

Web 应用的执行过程 -- 谈谈 WAD/CGI/ISAPI 的区别

Web 应用的执行过程 -- 谈谈 WAD/CGI/ISAPI 的区别    Borland 在 Delphi/C++ Builder 中提供了多种类型的 Web 应用开发,其中最常用的应该是用于调试...
  • Raptor
  • Raptor
  • 2002-08-19 16:50:00
  • 3329

java学习心得——面向对象的含义

上大学时,有一门公共课,名字叫做面向对象编程。课程内容是C++,但上完两学期,我也不能很好的理解面向对象的概念。 直到学习了java,感受到了,对象的概念深入骨髓的感觉。仅仅因为对“方法”的调用语法,...
  • u010505147
  • u010505147
  • 2015-03-06 12:17:50
  • 907

java面向对象学习心得

一开始接触的语言是C语言,面向过程,感觉还是比较简单的。以为java的学习会比较困难,但是对于面向对象的这种语言还是比较容易上手的。感觉比C语言还要简单,花又说回来,对于语言没有容易简单,只要掌握了其...
  • idreamit
  • idreamit
  • 2015-07-11 21:06:20
  • 336

数组-二维数组(内存分布,相关运用)

平时用的数组机会也不少,但对二维数组的总结较少。对二维数组的内存分布更是没有了解过。今天对二维数组的内存分布和相关运用进行了重新认识和归纳。...
  • u011331844
  • u011331844
  • 2014-03-06 10:58:49
  • 1296

Java多维数组的内存分配

什么是多维数组多维数组的本质还是1维数组,就是数组元素依然是数组的1维数组,比如2维数组是数组元素是1维数组的数组,3维数组是数组元素是2维数组的数组…….以此类推,N维数组是数组元素是N-1维数组的...
  • jyxmust
  • jyxmust
  • 2017-01-16 03:48:19
  • 1026

关于Java中多维数组的内存结构分析

本文是推测分析的结果,非真理性,因为JDK的源代码部分内容有限,不可把本文作为“真理”使用,仅提供参考提供给对底层感兴趣的小伙伴用来阅读之用!当然尽可能保证文章的客观性,所有的实验在各个平台进行了很多...
  • silentbalanceyh
  • silentbalanceyh
  • 2015-01-12 16:32:30
  • 5736

学习java中面向对象的一些小总结。

Java面向对象 面向对象三大特征:封装、继承、多态   封装:1.提高数据的安全性。 2.操作简单 3.隐藏了实现 使用private修饰需要封装的属性,用set和get设置和获取属性。   构造函...
  • xs_challenge
  • xs_challenge
  • 2016-11-17 20:13:47
  • 1224

Java面向对象

主要讲授面向过程和面向对象,以及面向对象的特性,以及Java内存分配
  • 2017年08月11日 19:16

黑马程序员-面向对象的理解以及Objective-C方法和对象分配内存的学习笔记

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 1、OC与C的区别: 从解决问题的思想方面,OC是面向对象,C是面向过程。 在MAC里面实现的...
  • u012749656
  • u012749656
  • 2015-05-31 22:11:50
  • 555

对面向对象的再学习之总结

在写之前,突然想到了一句话:程序员也要有程序员的高风亮节和骨气,不拿来主义,不做伸手党,最没节操的就是拿来之后直接压箱底儿了。 闲言少叙,正题。 一、对象是什么?为什么要面向它?        对象,...
  • Vin1992
  • Vin1992
  • 2017-03-24 18:11:11
  • 205
收藏助手
不良信息举报
您举报文章:java学习day6-二维数组和面向对象的内存分配
举报原因:
原因补充:

(最多只允许输入30个字)