Java Notes

Java Notes

方法

  • 方法应该定义在类之中,当时不能在方法当中再定义方法。不能嵌套
  • 方法定义的前后顺序无所谓
  • 方法定义之后不会执行,如果希望执行,一定要调用;单独调用、打印调用、复制调用。
  • 如果方法有返回值,那么必须写上"return 返回值";不能没有
  • return 后面的返回值数据,必须和方法的返回值类型对应起来
  • 对于一个void没有返回值的方法,不能写return后面的返回值,只能写ruturn自己。
  • 对于void方法当中最后一行的return可以省略不写
  • 一个方法中可以有多个return语句,但是必须保证同时只有一个被执行

方法重构

public class MethodOverload {
    public static void main(String[] args) {
        System.out.println(sum(10, 20));
        System.out.println(sum(10, 20, 30));
        System.out.println(sum(10, 20, 30, 40));
    }

    public static int sum(int a, int b) {
        return a + b;
    }

    public static int sum(int a, int b, int c) {
        return a + b + c;
    }

    public static int sum(int a, int b, int c, int d) {
        return a + b + c + d;
    }
}

方法重载的因素

  1. 参数数目不同
  2. 参数类型不同
  3. 多类型顺序不同

方法重载与下列因素无关

  1. 与参数名称无关
  2. 与方法的返回值类型无关

数组Array

动态初始化(指定长度)

数据类型[] 数组名称 = new 数据类型[数组长度];

静态初始化(指定内容)

数据类型[] 数据名称 = 数据类型[]{元素1,元素2,……};

public static void main(String[] args){
        int[]arrayA=new int[]{5,15,25};
        }

注意事项:
虽然静态初始化没有直接告诉长度,但是根据大括号里面的元素具体内容,也可以自动推算出来长度。

使用静态初始化数组的时候,格式还可以省略一下。
标准格式:
数据类型[] 数组名称 = new 数据类型[] {元素1,元素2,……}

省略格式:
数据类型[] 数组名称 = {元素1,元素2……}

注意事项:

  1. 静态初始化没有直接指定长度,但是仍然会自动推算得到长度。
  2. 静态初始化可以拆分成为两个步骤。
  3. 动态初始化也可以拆分成为两个步骤。
  4. 静态初始化一旦使用省略格式,就不能拆分成为两个步骤了。

使用建议:
如果不确定数组当中的具体内容,用动态初始化;否则,已经确定了具体内容,用静态初始化。


数组使用时的注意事项:
直接打印数组名称,得到的是数组对应的内存地址哈希值
访问数组元素的格式:数组名称[索引值]
使用动态初始化数组的时候,其中的元素将会自动拥有一个默认值。规则如下:
如果是整型,那么默认为0;
如果是浮点类型,那么默认为0.0;
如果是布尔类型,那么默认为false;
如果是应用类型,默认为null;

Java内存分配

Java的内存需要划分成5个部分:

  1. 栈(Stack):存放的都是方法中的局部变量。方法的运行一定要在栈当中。
    局部变量:方法的参数,或者是方法{}内部的变量
    作用域:一旦超出作用域,立刻从栈内存当中消失。
  2. 堆(Heap):凡是new出来的东西,都在堆当中。
    堆内存里的东西都有一个地址值:16进制
    堆内存里面的数据,都有默认值。规则:
    如果是整型,那么默认为0;
    如果是浮点类型,那么默认为0.0;
    如果是字符,那么默认为’\u0000’;
    如果是布尔类型,那么默认为false;
    如果是应用类型,默认为null;
  3. 方法区(Method Area):存储.class相关信息,包含方法的信息。
  4. 本地方法栈(Native Method Area):与操作系统相关
  5. 寄存器(pc Register):与CPU相关。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值