JAVA_Lesson4(传智播客笔记之语言基础)

System.out.println();//这一条语句可以实现换行System.out.print()这条语句一点意义都没有。(System是一个类)

Break作用的范围:要么是switch语句,要么是循环语句。

C语言中貌似没有可以这样指定的跳出:

Xiaoqiang:for(int x=0;x<4;x++)

{

Wangcai:for(int y=0;y<4;y++)

{

System.out.pritln(“x=”+x);

Break;//默认跳出Wangcai循环

Break xiaoqiang;//这样就会跳出外面的循环,只打印x=0;

}

}

Continue作用范围为循环结构,继续循环而已,跳出本次循环,不跳出循环结构

for(int x=0;x<3;x++)

{

    continue;//放在上面和下面是有很大区别的,放上面的话那么下面那条语句永远执行不了。当然continue和break一样,也可以标志自己的名称。

    System.out.println(“x=”x);

 }

函数:

代码示例:

class Demo1

{   

    static int add(int a,int b)

    {

        int c=a+b;

        return c;

     }

  public static void main(String[] args)

      {

         int a=2,b=3;

         int c;

         c=add(2,3);

         System.out.println(c);

     }

 }

如上代码中,若是add函数(之前我就是放在main的后面控制台报错,显示;有问题,果然这一点与C语言中的语法类似,可能大致是需要声明),直接把该函数放在前面就可以解决问题。

没有返回值的函数体中可以加一句来结束函数:return;(如果返回值类型是void,函数中的return语句也可以省略不写)其实你不写也有,系统自动会给你加上。

普通函数要和主函数并列写,不要写在主函数里面。函数是用于封装功能的,加法函数的功能就是相加,不要在里面写打印语句,这样写不太规范。语法虽然没有错误。返回结果交给调用者来处理。

内存加载过程:(自己要理清楚,主函数运行完后也释放内存)

Java命令一运行就会启动虚拟机。编译的时候不会去找主函数,但是运行的时候去找主函数。如果没有主函数的话,编译的时候不会报错,但是运行的时候去找主函数的时候,会发现找不到主函数而报错。


重载(overload):同一个类中允许存在一个以上的同名函数,只要他们参数个数或者类型不同即可。(注:与函数的返回值类型无关)

未知内容参与的不同,功能类似时可以考虑使用函数重载。

数组:参见定义方式:int[] arr=new int[3];

内存的划分:

寄存器区(CPU处理)

本地方法区(与所在系统有 关、分版本的)

方法区(目前没讲)

栈(局部变量,作用域一旦结束就自动释放)

Heap(存储的都是实体,数组(数组其实就是对象)和对象/也可以说凡是new出来的东西都在堆里)堆里面的东西不会随时释放的。 实体可以用来封装数据,还可以封装多个。

int[] arr=new int[3];(内存图解)


叫做arr(引用数据类型)引用了堆内存中的一个实体或者指向了堆内存中的一个实体。

arr[0]=89;//可以改变堆内存中的值,从0变为89

arr[0]=null;//不能为0,这句可以让arr不指向任何实体。此时,堆内存的该数组没有人去指向了,不定时的被回收(垃圾回收机制与C++很大的不同,C++需要手动释放内存)。

堆:每一个实体都有首地址值;堆内存里面的变量均有默认初始化值,数组中的每一个元素的值均为0

如果实体没有被指向,那么该实体就是垃圾。

当数组越界时,编译不报错,但是JVM创建实体的时候才可以检查出来。(因为编译的时候并没有创建实体)

ArrayIndexOutOfBoundsException//数组角标越界的标注,当访问到数组不存在的角标时,就会发生该异常。

NullPointerException//当引用型变量没有任何实体指向时,还在用其操作实体,就会发生该异常。

直接打印数组名时,例如出现 [I@c17164@后面的是数组实体的哈希值,由哈希算法计算出来的数组的16进制地址值)左边代表实体的类型,[表示数组,而I表示int类型的。

(当不知道该变量接收的是什么类型的实体,可以这样打印测试下,看左侧即可知道接收的数据类型)

























 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值