师兄分享的视频好好看(2018.12.19)

第六天的视频,看到BAT招聘的一条条要求,一条条达到要求!!!!!

1:二维数组概述

在这里插入图片描述在这里插入图片描述

2:二维数组定义三种格式

2-1:格式1
在这里插入图片描述

再仔细复习一次最基础的是没有错的,可以扫盲。

在这里插入图片描述

下面是一二维数组的举例:
在这里插入图片描述

下面观察内存图的变化:
在这里插入图片描述
**注意:**每个二维数组开始的值给的是null,二维数组的元素是一维数组,而一维数组是一个引用类型,引用类型的数据数据类型默认是null
2-2:格式2

在这里插入图片描述

下面是一个具体的例子的内存图

在这里插入图片描述

2-3:格式3
在这里插入图片描述

内存图如下
在这里插入图片描述

3:二维数组的遍历

在这里插入图片描述
在这里插入图片描述

例子:打印杨辉三角

2018.12.19 9:53 自己写的杨辉三角的代码

import java.util.Scanner;
public class Test {
	public static void main(String[] args) {
		System.out.println("请输入杨辉三角的边长");
		Scanner sc = new Scanner(System.in);
		int x = sc.nextInt();
		int [][]array =new int [x][x];
		for(int i = 0;i<x;i++) {
			array[i][0]=1;
			array[i][i]=1;
		}
		for(int i =2;i<x;i++) {
			for(int j = 1;j<=i;j++) {
				array[i][j]=array[i-1][j-1]+array[i-1][j];
			}
		}
		//打印二维数组
		for(int i=0;i<array.length;i++) {
			for(int j=0;j<=i;j++) {			 
				
					System.out.print(array[i][j]+" ");
				
					
			}	
			System.out.println();
		}
	}
}

键盘输入:8 (运行结果如下图)
在这里插入图片描述

4:(Java中的参数传递问题)观察方法的调用执行过程

基本类型和引用类型的传递不一样

基本类型传递的是值!引用类型传递的是地址值(两个引用指向同一个内存)

方法调用的时候在栈内存中

在这里插入图片描述

5:把一个数字转换到数组格式中

在这里插入图片描述

面向对象开始喽!!!1

在这里插入图片描述

6:面向对象介绍
在这里插入图片描述

在这里插入图片描述

因为面向对象,我们变懒了,都是调用别人的东西哦!
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述在这里插入图片描述在这里插入图片描述

面向对象:结构清晰,后期维护省事!

下图是UML,在渣打实习的时候有接触过在这里插入图片描述

7:面向对象开发设计以及特征

8:类与对象的关系

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

9:一个对象内存图

在这里插入图片描述

在这里插入图片描述
1:栈内存里边是局部变量,堆内存里边的new出来的;
2:我们java文件运行的是class文件,首先把class文件加载到内存;方法区有一个专门存放class 的区域;
3:main方法先进栈,然后执行 Phone p= new Phone();Phone在栈内存中,new Phone()在堆内存中;
4:找到方法区中的class文件,然后在堆内存中开辟对应的成员变量的堆内存空间,方法不需要放进来,啊hi是在方法区域(因为方法不会变,每个对象调用的都是一个方法)
5:但是在堆内存中会存放方法区中方法的地址0x001,用来在调用的时候找到需要调用的方法
6:属性打印完毕,开始给乔布斯打电话,加载call方法到栈内存,当执行完毕后,他就从栈内存消失

10:两个对象内存图
在这里插入图片描述
注意方法区就一个,是两个对象共同使用的

在这里插入图片描述

11:三个对象的内存图
在这里插入图片描述

两个引用指向同一个堆内存!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值