目录
一、 封装性 1
二、 构造方法和匿名对象。 1
1. 对象的产生格式: 2
2. 构造方法和普通方法的区别 2
3.构造方法的作用 2
三、数组(引用数据) 2
3.1数组的基本概念 2
3.2数组的访问 3
3.3数组的储存结构 3
3.5 数组与方法参数的传递 4
3.6数组的转置 5
3.7方法返回数组 6
3.8对象数组 7
①类名称 ②对象名称 = ③ new ④类名称()
①类名称 : 规定了对象的类型,即对象可以用到哪些属性和方法
②对象名称:如果想要使用对象,需要有一个名字
③ new :开辟新的堆内存空间
④类名称():调用一个和类名称一样的方法,这就是构造方法。
为了保障程序的正常运行,即使用户没有建立构造方法,java也会在程序编译之后创建一个和没有参数和返回值类型的构造方法。(构造方法一直存在)
3.构造方法的作用
1.类对象实例化的时候设置属性初始化内容。构造方法是为属性初始化准备的。
2.如果一个类之中已经明确定义了构造方法,则不会在自动生成默认构造方法。类中至少存在一种构造方法。
3.构造方法没有返回值类型。包括void
在构造方法的基础上对参数数量增加或者减少。(在编码过程中,构造方法重载循序参数升序或者降序)。
当存在多个构造方法时,用户可根据需求自由选择。
真实的对象信息都保存在堆内存中,没有栈内存指向的对象称为匿名对象。
匿名对象只能使用一次.
声明并开辟数组: 数据类型 数组名称[] = new 数据类型[长度]
分步完成:(声明数组的时候使用[])
--声明数组 :数据类型 数组名称 [] = null;
--开辟数组:数组名称 = new 数据类型[长度]
①当数组开辟空间以后,采用“数组名称[下标/索引]”的形式访问数组。数组下标从0开始。
②数组里面的数据以顺序的形式储存,采用循环的方式读取数据。
对象中的堆内存保存的是属性,而数组中的堆内存保存的是一组数据。
3.4数组的引用传递
数组动态初始化:先开辟数组空间,而后为数组中的内容进行复制。
数组静态初始化:数组定义好的同时设置好了数组内容。
格式一(简化格式):数据类型 数组名称 [] = {a,b,c,....};
格式二(标准格式):数据类型 数组名称 [] = new 数据类型 [] {a,b,.}
data 指引的堆内存的数据传递给temp数组。
①数组的传递
程序:
public class day01{
public static void main(String args[]){
int data[] = new int[]{1,2,3};
change(data);
for (int x = 0;x
}
}
public static void change(int temp[]){
for (int x = 0;x
}
内存分析:
例:数组{1,2,3,4,5,6,7,8}转置成{8,7,6,5,4,3,2,1}
第一次转置:8,2,3,4,5,6,7,1
第二次转置:8,7,3,4,5,6,2,1
第三次转置:8,7,6,4,5,3,2,1
第四次转置:8,7,6,5,4,3,2,1
转置次数:数据个数/2;
二维数组的转置
同行同列的二维数组转换:
1 2 3
4 5 6
7 8 9
第一次转置: 1 4 3 第二次转置:1 4 7
2 5 6 2 5 6
7 8 9 3 8 9
第三次转置: 1 4 7
2 5 8
3 6 9
3.7方法返回数组
Public static int[] init(){
return new int[]{1,2,3}
}
数组是引用类型,而类也同样是引用类型。对象数组表示一个引用类型里面嵌套了其他引用类型。引用数据类型也同样可以定义数组。这样的数组称为对象数组。