java 基础知识

jvm 内存划分

寄存器:内存和cpu之间

本地方法栈:jvm调用了系统的功能

方法和数据共享:运行的时候class文件进入的地方

方法栈:所有方法运行的时候进入内存

堆:存储的是容器和对象

数组常见的异常有数组索引越界异常,空指针异常

二维数组:

int arr[][]=new int[3][4];

int arr[][]=new int[3][];

int arr[][]={{1, 2},{3,4,5},{6,7,8,9}};

内存

int arr[][]=new int[3][2]

表示开辟三块大空间,每个大空间又分为两个小空间

打印数组:

一维数组五种

Arrays.toString(arr)

for(int n:arr){

System.out.printin(n+",")};

for(int i=0;i<arr.length;i++){

System.out.printin(arr[i]+",")};

System.out.println(Arrays.asList(arr));

Arrays.asList(arr).stream().forEach(s->System.out.println(s));

二维数组三种

for(int n=0;n<arr.length;n++){

        for(int i=0;i<arr[n].length;i++){

                System.out.print(arr[n][i]+" ");}

System.out.println();

}

for(int[] a:arr){

        for(int j:a){

               System.out.print(j+" ")}

System.out.println();

}

for(int i=0;i<arr.length;i++){

        System.out.println(Arrays.toString(arr[i]));

}

三维数组同理也是三种,留作自行练习

四.方法

1.引入

为什么要有方法:提高代码的可复用性

什么是方法:完成功能的特定代码块

2.语法格式

访问修饰符:方法允许被访问的权限范围public protected private 无修饰符

返回类型 void 任何数据类型

方法名:同变量名规则,小写;多个单词时第一个首字母小写,其余首字母大写

参数列表:参数类型加参数名

3.方法调用:使用对象名去调用方法,静态方法是使用类名去调用

方法包含在类中,调用时先创建方法的类的对象,然后通过对象去调用方法

类名 对象名=new 类名();

对象名.方法名();

4.注意

方法参数是基本类型,传递的是值,包含string类型,形式参数的改变不影响实际参数

方法参数是引用类型,传递的是内存地址值,形参的改变会影响实参。

方法的定义只能在类内部,不能嵌套定义,即方法和方法之间需要并列,不能在主方法里直接定义方法

方法的返回值是void,方法中可以省略return

方法一般在主方法前面定义

调用返回值为void的方法时,不能写在输出语句中

5.方法重载:

在一个类中,方法名相同,参数列表不同,与方法的返回值类型无关

参数列表不同分为两种,参数个数不同,参数类型不同,参数顺序不同

重载看方法名和参数列表,与其他无关

6.可变参数列表

public void sum(int....n){}

可变参数一定在参数列表的最后

可以将数组传递给可变参数列表

方法名相同,一个参数是可变参数,另一个参数是一维数组,他们不属于重组

可变参数列表所在的方法,是最后被执行访问的

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值