Java自学 --换车重启6

博主分享了在学习编程过程中遇到的难点,如递归理解困难,经典问题如老鼠走迷宫、汉诺塔、八皇后等案例感到困惑。同时介绍了Java中的方法重载概念,展示了如何定义不同参数列表的同名方法。此外,还提及了可变参数的使用规则,并强调了变量的作用域和生命周期。博主计划跳过当前难点,继续学习,以保持学习状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


晕了的递归

​ 字面上的意思懂,一些简单的课堂练习也大概知道了,但是对于老师讲的案例是真的晕,老鼠走迷宫,汉诺塔,八皇后,以我现在的水平,和老师讲的精细度,我是完全无法理解的,方法调用方法,直接绕进去了,确确实实感受到编程的难度,没有把代码贴到博客里,因为就算我能背一遍写出来,似乎也不是我的东西,如果遇到相同难度的问题,我不确定自己是不是能做出来,八皇后老师给了思路,但是还没有讲解,希望后续的日子我能想出运行的方法。

​ 先跳过这3个经典案例,学习后面的,如果不保持学习,我感到很慌张,焦虑。只要我在学习了,哪怕没有成果,没有进度,至少知道自己在做什么,就还好。


方法重载

java 中允许同一个类中,多个同名方法的存在,但要求 形参列表不一致!

注意事项:

  • 方法名:必须相同
  • 形参列表:必须不同(形参类型或个数或顺序,至少有一样不同,参数名无要求)
  • 返回类型:无要求
class MyCalculator{
    public int calculate(int n1 ,int n2) {
        return n1 + n2;
    }
    public double calculate(int n1 ,double n2) {
        return n1 + n2;
    }
    public double calculate(double n1 ,int n2) {
        return n1 + n2;
    }
    public int calculate(int n1 ,int n2,int n3) {
        return n1 + n2 + n3;
    }
}

可变参数

访问修饰符 返回类型 方法名(数据类型... 形参名) { 

}

注意事项:

  • 可变参数的实参可以为0个或任意多个
  • 可变参数的实参可以为数组
  • 可变参数的本质就是数组
  • 可变参数可以和普通类型的参数一起放在形参列表,但必须保证可变参数在最后
  • 一个形参列表中只能出现一个可变参数

作用域(重要)

定义

  • 在java编程中, 主要的变量就是属性(成员变量) 和局部变量

  • 我们说的局部变量一般是指在成员方法中定义的变量。

  • java中作用域的分类

    • 全局变量:也就是属性, 作用域为整个类体
    • 局部变量:也就是除了属性之外的其他变量,作用域为定义它的代码块中
  • 全局变量(属性)可以不赋值,直接使用,因为有默认值,局部变量必须赋值后,才能使用,因为没有默认值。[举例]

注意事项

  • 属性和局部变量可以重名,访问时遵循就近原则
  • 在同一个作用域中,比如在同一个成员方法中,两个局部变量,不能重名
  • 属性生命周期较长,伴随着对象的创建而创建,伴随着对象的销毁而销毁。局部变量,生命周期较短,伴随着它的代码块的执行而创建,伴随着代码块的结束而销毁。即在一次方法调用过程中。
  • 作用域范围不同
    • 全局变量/属性:可以被本类使用,或其他类使用(通过对象调用)
    • 局部变量:只能在本类中对应的方法中使用
  • 修饰符不同
    • 全局变量/属性可以加修饰符
    • 局部变量不可以加修饰符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值