day6笔记

主要内容
二维数组
面向对象概述
封装

二维数组
每个元素都是一个一维数组的数组,就是二维数组。
本质还是一个一维数组,只不过数组中的每个元素,都是一个一维数组的引用。
格式
int[][] arr = new int [3][5];

面向对象思想
1,就是一种编程所使用的思想,编程思路
2,面向过程是面向对象的基础,面向对于是基于面向过程的
面向过程:
更多的是强调解决问题的基本步骤,更强调的是方法,强调的是解决问题的过程,强调的是“逐步分解”解决问题的思路
面向对象:
强调的是解决问题的主体(谁来解决这个问题),强调的是对象,强调的是数据,强调的是“逐步拼装”的思考方式
3,面向过程的好处:
1,更符合人类的思考习惯
2,复杂的问题简单化
3,由执行变成指挥
4,面向对象的特征:
1.封装
2.继承
3.多态
5,总结
面向对象是基于面向过程之后,更加高纬度的一种思考方式,更高维度的编程思想,并不是和面向过程相互排斥,更多考虑的是各种数组的方法和组织。

类和对象
类:类型,对具体事务的一种抽象的描述,抽象的认识,就是抽象出来的一个概念,抽象就是抽取事物中,相同,相似的的内容出来,形成一个概念,方便交流
对象:事物的具体体现

1,类是一种相关属性和功能描述的集合
2,属性:对事物特征的描述,一般是名词或者形容词,表示数据 Java中,一般使用成员变量,描述属性,和以前的定义方法一样,只不过现在是在类中方法外。
3,功能:描述事物可以做什么事情,一般都是动词或者动宾结构,表示方法,java中,一般使用成员方法,描述功能 和以前定义方法一样,只不过现在去掉了 static
4,举例
人类
属性:姓名,年龄,性别
功能:吃饭,睡觉,工作
5,说明:
一个源文件可以定义多个类型,将来生成多个.class的字节码文件这些多个字节码文件并没有说明特殊关系,只是在同一个文件夹的关系

对象的创建和使用
1,对象:
事物的具体体现
具体数据和操作数据的逻辑的集合
2,对象创建的格式:
类型名称 对象名称 = new 类型名称();
3,访问属性:
对象名.属性名 = 属性值;//赋值
对象名.属性名();
4,功能访问;
对象名.方法名();

两个引用指向同一个对象
1,说明,两个引用都是记录同一个对象的地址,任意一个引用访问修改了对象内容,另外一个引用再访问对象时,都是修改过之后的内容
局部变量和成员变量的比较
1,成员变量:定义在类中的,用于描述某个事物的属性的变量,局部变量,定义在方法中,暂时使用该完成某个功能的变量
2,不同点:
代码方面:定义的位置不同
成员变量:定义在类中方法外
局部变量:定义在方法中或者方法声明上
内存层面:空间存储的位置不同
成员变量:粗存在堆内存中,自己所属的对象中
局部变量:存储在栈内存的当前方法的栈帧中
内存层面:生命周期不同
成员变量:属于对象,随着对象的创建而存在,随着对象的消失而消失
局部变量:属于方法,随着方法的调用而存在,随着方法的调用结束而消失
局部变量:必须先手动赋值,后使用(访问)
成员变量:有自己的默认初始化值,随着数据类型的不同,而不同
引用数据类型:null
基本数据类型:
整数类型:0
小数类型:0.0
布尔类型:false
字符类型:“\u0000”(空格字符)

方法的形式参数的引用类型
1,方法的形式参数,即可以是基本数据类型的变量,也可以是引用数据类型的变量
2,引用数据类型:存储的是数据的地址,而非数据本身
数组,类,接口,枚举类型
3,当方法的形式参数是一个引用类型的变量时,希望将来在调用方法的时候可以传入进来某个具体对象的引用,就是让方法声明这个引用,指向传入的对象
4,在多个方法中的引用,可以记录同一个对象的地址
任意一个方法中的该引用,操作了这个对象,其他方法中任然可以访问到对象修改之后的状态
方法的返回值是引用类型
1,方法的返回值类型,既可以是基本数据类型,也可以是引用数据类型
2,如果方法的返回值类型是引用类型,那么return 语句后面跟着的,必须是该类型对象的引用
3,说明,任然是多个方法中的引用,指向了同一个对象
匿名对象的理解和使用
1,匿名对象:没有名字的对象
2,定义格式:
new 类名();
3,使用场景:
1.当该类的某个方法,只调用一次的时候,就可以使用匿名对象,好处就是可以节省一些栈内存的空间,不需要声明额外的引用,如果需要多次使用该对象,就不建议使用匿名对象(否则得创建多个该类的对象)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值