java语言基础4

二维数组概述和格式1

格式1
数据类型[][] 变量名 = new 数据类型[m][n];
m表示这个二维数组有多少个一维数组;
n表示每一个一维数组的元素个数
举例:
int[][] arr = new int[3][2];
定义了一个二维数组;
这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2]
每个一维数组有2个元素,可以通过arr[m][n]来获取
表示获取第m+1个一维数组的第n+1个元素

注意一下定义的区别:
int x;//定义一个整数变量x
int y;//定义一个整数变量y
int x,y;//定义一个整数变量x,y


int[] x;//定义一个一维数组x
int[] y[];//定义一个二维数组y
int[] x,y[];//定义一个数据类型为int x的一维数组和一个数组名为y的一维数组,就是二维数组

数组格式2的讲解

格式2:
数据类型[][] 数组名 = new 数据类型[m][];
m表示这个二维数组里面有多少个一维数组;
列数没有给出,可以动态的给。这一次是一个变化的列数;

二维数组遍历

二维数组遍历:

// An highlighted block
for(int x=0;x<arr.length;x++){
	for(int y = 0;y<arr[x].length;y++){
		System.out.print(arr[x][y]+"");
	}
	System.out.println();
}

需求:遍历二维数组
两个明确:
返回值类型:void
参数列表:int[][] arr

// An highlighted block
public static void printArray(int[][] arr){
	for(int x=0;x<arr.length;x++){
	for(int y = 0;y<arr[x].length;y++){
		System.out.print(arr[x][y]+"");
	}
	System.out.println();
}
}

最后向main方法中添加printArray(arr);
数组值的累加:sum +=arr[x][y];

思想引入和面向过程思想概述

面向对象思想
类与对象及其使用
对象的内存图
成员变量和局部变量的区别
匿名对象
封装(private)
this关键字
构造方法
ststic关键字

面向对象(思想概述和举例)

当需求单一,或者简单时,我们一步一步去操作没问题,并且效率也挺高。可是随着需求的更改
,功能的增多,发现需要面对每一个步骤很麻烦了,这时就开始思索,能不能把这些步骤
和功能在进行封装,封装时根据不同的功能,进行不同的封装,功能类似的封装在天气。这样
结构就清晰了很多,用的时候,找到对应的类就可以了,这就是面向对象的思想。

面向对象思想概述:
面向对象时基于面向过程的编程思想
面向对象的思想特点
是一种更符合我们思想习惯的思想
可以将复杂的事情简单化
将我们从执行者变成了指挥者

面向对象(大象装进冰箱案例)

面向过程:

// An highlighted block
class Demo{
	public static void main(String[] args){
	System.out.println("打开冰箱门");
	System.out.println("装进大象");
	System.out.println("关闭冰箱门");

}

	println ststic void open(){
		System.out.println("打开冰箱门");
}
	println ststic void in(){
		System.out.println("装进冰箱");
}
	println ststic void close(){
		System.out.println("关闭冰箱门");
}
}
;

面向对象:
我们怎么才能更符合面向对象思想呢?
A:有哪些类呢?
B:每个类有哪些东西呢?
C:类与类之间的关系是什么呢?

把大象装进冰箱的分析?(如何分析有哪些类呢?UML。名词提取法。)
A:有哪些类呢?
大象
冰箱
Demo
B:每个类有哪些东西呢?
大象:
	进去

面向对象(开发,设计以及特征)

面向对象开发
就是不断的创建对象,使用对象,指挥对象做事情。
面向对象设计
其实就是在管理和维护对象之间的关系
面向对象的特征
封装(encapsulation)
继承(inheritance)
多态(polymorphism)

类与对象

类与对象关系:
我们学习编程语言,就是为了模拟显示世界的事物,实现信息化。比如:去超市买东西的计费系统
去银行办业务的系统。
我们如何表示一个现实世界事物呢:
属性 就是该事物的描述信息
行为 就是该事物能够做什么
举例 学生事物

我们学习的JAVA语言最基本单位是类,所以我们就应该把事物用一个类来体现。

事物: 类:
属性; 成员变量
行为 成员方法

类:是一组相关的属性和行为的集合。是一个抽象的概念。
对象:是该事物的具体表现形式。具体存在的个体
举例:
学生:类
班长:对象

类的定义概述和学生类的分析

现实世界的事物
属性 人的身高,体重等
行为 人可以学习,吃饭等
JAVA中用class描述事物也是如此
成员变量 就是事物的属性
成员方法 就是事物的行为、
定义类其实就是定义类的成员(成员变量和成员方法)
成员变量:和以前变量的定义是一样的格式,但是位置不同,在类中方法外。
成员变量:和以前的方法定义是一样的格式,但是今天先把static先去掉。

学生类的定义

//这是我的学生类
class Student{
//定义变量
//姓名
String name;
//定义年龄
int age;
//定义地址
String address;

//定义方法
//学习的方法

// An highlighted block
public void study{
	System.out.println("学生 爱学习");
}
public void eat{
	System.out.println("学习饿了,要吃饭");
}
public void sleep{
	System.out.println("学习累了,要睡觉");
}
}

在一个java文件中写两个类:一个基本的类,一个测试类。
注意:文件名称和测试类名称一致。。
如何使用呢?
创建对象使用。
让用户创建对象呢?
格式:类名 对象名 = new 类名();
如何使用成员变量呢?
对象名.变量名
如何使用成员方法呢?
对象名.方法名(…)

总结

1.二维数组
(1)元素是一维数组的数组。
(2)格式:
A:数据类型[][] 数组名 = new 数据类型[m][n];
B:数据类型[][] 数组名 = new 数据类型[m][];
C:数据类型[][] 数组名 = new 数据类型[][n]{{…},{…},{…}};
D:数据类型[][] 数组名 = {{…},{…},{…}};
(3)案例:
A:二维数组的遍历
B:二维数组的求和
C:杨辉三角
2.面向对象
(1)面向对象
面向对象是基于面向过程的编程思想。
(2)面向对象的思想特点
A:是一种更符合我们思考习惯的思想
B:把复杂的事情简单化
C:让我们从执行者变成了指挥者

举例:
	买电脑
	洗衣服
	做饭
	。。。
	万事万物皆对象

(3)把大象装进冰箱
A:面向过程实现
B:面向对象实现
注意;如何让我们的操作更符合面向对象思想呢?
A:有哪些类
B:每个类有哪些成员
C:类与类的关系
(4)类与对象
A:显示世界的事物
属性 事物的基本描述
行为 事物的功能
B:Java语言中最基本的单位是类。所以,我们要用类来体现事物
C:类
成员变量 事物属性
成员方法 事物行为
D:类:是一组相关的属性和行为的集合。是一个抽象的概念。
对象:是该类事物的具体存在,是一个具体的实例。(对象)

	举例:
	学生:类
	班长:对象

(5)类的定义及使用
A:类的定义
成员变量 定义格式和以前一样,就是位置不同,在类中,方法外。
成员方法 定义格式和以前一样,就是去掉了static.
B:使用类的内容
a:创建对象?格式:
类名 对象名 =new 类名();
b:如何使用成员变量和成员方法呢
对象名.成员变量
对象名.成员方法()
(6)案例:
A:学生类的定义和使用
B:手机类的定义和使用
(7)内存图:
A:一个对象的内存图
B:二个对象的内存图
C:三个对象的内存图
(8)JAVA程序的开发,设计和特征
A:开发:就是不断的创建对象,通过对象调用功能
B:设计:就是管理和维护对象间的关系
C:特征
a:封装
b:继承
c:多态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值