大数据java篇——面向对象

一维数组

格式一:

元素类型[ ] 数组名 = new 元素类型 [元素个数或数组长度]

如:int[ ] arr=new int [5]

格式二:

元素类型[ ] 数组名=new 元素类型 [ ] {元素,元素,......}

如:int[ ] ar=new int[ ] {3,4,2,5}

       int[ ] arr={3,5,2,7}

冒泡法排序

public class BubbleSort 
{

	public static void main(String[] args) 
	{
		outArr(bubble(new int[] {38,5,2,9,6,32,64,25,69,34,23}));

	}
	
	public static int[] bubble(int[] arr)
	{
		for(int i=0;i<arr.length-1;i++)
		{
			for(int j=0;j<arr.length-1-i;j++)
			{
				int temp=0;
				if(arr[j]>arr[j+1])
				{
					temp=arr[j];
					arr[j]=arr[j+1];
					arr[j+1]=temp;
				}
			}
		}
		return arr;
	}
	public static void outArr(int[] arr)
	{
		for(int i=0;i<arr.length;i++)
		{
			System.out.print(arr[i]+" ");
		}
		
	}
}

二维数组

格式一:

 int[ ] [ ] arr=new int[2] [3]     //相当于两个一维数组,每个一维数组三个元素

格式二:

int[ ] [ ] arr=new int[3] [ ]        //二维数组中有三个一维数组,可以分别对三个一维数组初始化,元素个数不一定相同

arr.length是二维数组的行数,arr[i].length是数组第i行的长度

面向对象

对象是类的实例

属性:对应类中的成员变量

方法:对应类中的成员函数

构造函数没有返回值并且和类同名

栈内存

用于存储局部变量,当数据用完,所占空间会自动释放。

堆内存

数组和对象,通过new建立的实例都存放在堆内存中;

每一个实例都有内存地址值;

实体中的变量都有默认初始化值;

static关键字

用于修饰成员,被修饰的成员具备特点:

1.随着类的加载而加载;

2.优先于对象存在

3.被所有对象共享

4.可以被类名直接调用

使用注意

1.静态方法只能访问静态成员

2.静态方法中不可以写this,super关键字

3.主函数是静态的

设置堆和栈

查看运行的java进程

$ jps [-V]    //显示可提取pid

查看指定java进程的对空间

$ jmap -heap pid

指定堆、栈的大小

java -Xss16m  Xxx      //栈指定
java -Xms24m            //堆起始
java -Xmx256m           //堆最大值

构造函数

构造函数不需要定义返回值类型,没有具体返回值。

构造代码块

也是类的成员,构造对象时先调用构造代码块然后再调用构造函数。给构造代码块加static关键字就变成了静态代码块。

静态代码块通常放置对静态成员变量的初始化过程。静态代码块在类的加载时执行,且只执行一次。

手动控制类加载:Class.forName("classname"),默认加载类时执行静态代码块(初始化)

Class.forName(String,boolean initialize,ClassLoader),可以控制加载类时是否初始化静态代码块



猜你喜欢

转载自blog.csdn.net/sp_ur/article/details/80446908
今日推荐