2021-07-19笔记

1.break,continue作用

答:①break中断循环,continue中断当前循环

②break终止switch的穿透性

③break可以中断自己命名的循环

2.方法作用?

答:①使程序变得更简短清晰

②有利于程序的维护(修改)

③可以提高开发效率

④可以提高代码的重用性

3.系统识别方法时,识别的是方法名_参数类型1_参数类型2_...
    a.public void play(int a){ play_int}
    b.public void play(int b){ play_int}
    c.public void play(float b){ play_float}
    d.public int play(float b){ play_float}
    e.private int play(int b){ play_float}
a与b不是重载,会识别成一个方法
a与c是重载,参数类型不同
c与d不是重载,重载与返回值无关,这里是错误,不知道返回哪种类型
d与e是重载,重载与修饰符无关
4.public static void main(){
    public void play(){}
    }
  答:方法的定义不能嵌套
5.public void run(){return 1;}
  答:返回的是空值
6.public byte show(int a){return a;}
  答:强制类型转换

7.方法的调用一定在方法里面

答:不对,可以在类里面给成员变量初始化时使用,也可以在代码块或者静态代码块中使用。

8.成员变量可以在任意方法中使用

答:目前可以。

9.数组中是否同时存储简单数据类型和引用数据类型的数据

答:可以存储简单数据类型和引用数据类型的数据,但是不能同时存储。

3.方法的内存展示

  1. java将内存分成了5块儿,分别是堆区,栈区,方法区,本地方法区,寄存器

  2. 栈区:里面存放数据的特点是:先进后出,我们主要将加载时的局部变量函数放在栈区,数据的特点是使用完立刻释放

  3. 堆区:存放的是实体(对象和数组),实体可以同时存放多个值,实体里面的变量如果不赋值,会 有默认值.整型数据默认值是0,boolean---false 。(使用完不会立刻释放,会在某个时刻释放)

    了解:

    1.方法区:程序运行中的二进制文件等(比如:.class,常量,常量在常量区,是方法区的一块) 。

    (.class对应的.class对象形式)

    2.本地方法区:存放外界引入的c,c++等的内容 。

    (方法名中其他修饰符为native是来自与C语言的)

    3.寄存器:也可以称为计数器。

    堆区中的数据会在某个时刻被释放-通过垃圾回收机制.

    垃圾回收机制是通过一个线程控制的,由于这个线程的等级比较低,所以不会立刻执行,数据就 不会立刻释放。

    2021年7月19日的Demo1结合day05.PDF中4.6的图片学习

4.递归

定义:在一个方法内,调用方法本身,称为方法的递归(注意和重载的区别)

说明:方法递归包含了一种隐式的循环,会重复执行某段代码,但是这种重复不需要使用循环 语句来进行控制

递归不会提高程序执行的效率,在某些特定的场合不得不用。

5.数组

5.1数组定义

1.数组中可以存储基本数据类型的数据, 也可以存储引用数据类型的数据。

2.数组的长度是不可变的,数组的内存空间是连续的。 一个数组一旦实例化完成,长度不能变。

5.2比较简单和引用数据类型

1.引用数据类型里面存储的是地址,并且这个地址是十六进制的数.简单数据类型存储的是值, 是十进制的 。(指针)

2.对于简单数据类型,直接在栈区的方法中开辟一块空间存储当前的变量,将要存储的数据直 接放在这块空间里

5.3 数组引用

1.数组的实例化的时候, 需要使用到关键字new 。

2.以后但凡是遇到了new, 都表示在堆上开辟空间!

3.数组, 其实是在堆上开辟的连续的空间。 例如 new int[5] ,就是在堆上开辟5个连续的4字 节空间。 然后,将堆上的内存地址, 赋值给栈上的变量array(引用)。

5.4数组遍历

两种方式(下标遍历和增强for循环)的对比 :

  • 如果需要在遍历的同时,获取到数组中的元素下标,需要使用下标遍历法。

  • 如果需要在遍历的同时,修改数组中的元素,需要使用下标遍历法。

  • 如果仅仅是想要获取数组中的每一个元素,不需要下标,也不需要修改数组中的元素,使用增强for循环。因为这种方式,遍历的效率比下标遍历法高。

5.5函数和数组的联合应用

函数传参分类:

①值传递:将保存简单数据的变量作为参数传递

②址传递:将保存地址的变量作为参数传递

址传递优点:让我们可以实现使用一个变量一次传递多个值

只要使用了址传递是否一定能改变数组的值(错误),要看值传递是否使用的是同一个数组

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值