首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Java】基础38:什么递归?

什么阶乘? 5的阶乘:5!=5×4×3×2×1; 4的阶乘:4!=4×3×2×1。 这就是阶乘。 现有一个需求:求一个数的阶乘?...=1,而不是想当然的以为等于0; 至于为什么为1,这是一个数学问题。 本质上n!=(n+1)!÷(n+1); 所以:0!=1!÷1=1。 那除了for循环还有没有其他方法呢?...看到没有,什么递归? 递归就是指在方法里面调用自己的方法这种现象。 就像我们在数学中的找规律一样,先把规律找出来,再创建方法。 ④如果是负数,因为负数是没有阶乘的,直接返回-1,或者报错。...因为它在文件操作中会使用到它,并且既然是学习Java,也有必要理解下递归的概念。 三、递归删除多级目录 根据我们昨天学的File类中的方法。

65720

Java】基础17:什么接口?

今天就让我们走进程序的世界,研究下什么接口? 一、接口的格式 还是以昨天的例子来理解接口: 动物园里有很多动物,分食草动物和食肉动物,食草动物又有小兔子等。 如何让这些动物进入动物园呢?...什么意思呢? 就是一家动物园,要接纳新动物,就制定了一个规则:动物吃什么? 每个动物吃的都不同,就直接写了一个抽象方法eat(),只有方法名eat,没说具体要吃什么。...什么意思呢? 动物园一开始制定的规则是:你想进动物园,必须说明你吃什么? 现在动物园想增加一个功能,就是想知道每个动物的名字叫什么?...什么时候有需求了重写就好,也可以一直不重写方法。 现在有一只兔子,没有名字,那就用接口的默认名(动物),突然有一天想给它取了一个新名字,小白,怎么办?...四、抽象类 在接口的抽象方法中,提到了一个概念,抽象类。 这个抽象类又是啥呢? 抽象类:有抽象方法的类就叫抽象类。如果一个类包含抽象方法,那么该类必须是抽象类。

69410

Java】基础18:什么多态?

什么多态呢?按照字面意思理解就是多种形态的意思。 还是举昨天的那个例子: 动物园里动物都得吃食物,兔子吃胡萝卜,猫吃鱼,狗吃肉。...具体什么意思呢? 变量有基本数据类型和引用数据类型。 其中引用数据类型又分为:数组,类和接口。 父类类型指的是子类继承至的父类,或者子类实现的接口。 按照现实里面的理解就是:一个是亲爹一个是干爹。...三、多态的弊端 多态这么方便,那它有没有什么弊端呢? 是有的。多态不能调用子类的特有方法,需要使用到强制转换。 ? 兔类中有一个特有的方法jump(),兔类的父接口Zoo中没有这个方法。...为了避免出现类转换异常,Java提供了一个关键字:instanceof,给变量名做类型的校验。 ?

58610

Java】基础12:什么数组?

小结: 当数据确定时,可以使用格式二或者格式三来定义数组,这种方式也静态定义。 当数据不确定时,可以使用格式一来定义数组,这种方式也叫动态定义。...那这是为什么呢? 打印出来的这串字符其实是数组的一个地址,那如何去访问具体的数值呢? 这就需要借助于索引了,什么是索引? 每个存入数组的数值都会有一个对应的角标,这就是索引,并且索引是从0开始的。...JVM作为Java虚拟机,它要运行程序,自然要对内存进行划分和管理: 寄存器:给CPU使用 本地方法栈:JVM在使用操作系统功能的时候使用 方法区:存储可以运行的class文件 堆内存:存储对象或者数组

77210

Java】基础28:什么异常?

那为什么会闪退呢? 就是程序它遇到了问题,又没有及时地处理,便只有崩溃了。而这种情况,便是异常。 在Java世界里面,异常指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。...那么出现了异常Java里面是如何处理的? 我们举一个抛绣球的例子来说明下jvm处理异常流程。 好,现在有一个异常,被Java虚拟机知道了。 这个异常就相当于绣球。...在Java世界里面:出现了异常,然后都不处理,一直往前抛,最终抛给了Java虚拟机。 于是Java虚拟机非常地生气,打印错误信息,终止了程序。 程序终止这件事情在开发过程中是能不出现就不要出现的。...如果是Java虚拟机来处理,程序就直接崩溃了呀,这样显然是不行的。 而程序员要将其处理成:我们抛出信息,提示用户:“卡内余额不足”,保证程序不会停止运行。...方式一:throw 因为Java里面异常本身就是一个类,所以创建对应的异常对象,再抛出说明。

64610

Java监听器

本期介绍 本期主要介绍监听器 文章目录 1.1.1 概述 1.1.2 监听器入门案例 1.1.3 案例:项目启动时加载数据 1.1.4 监听器术语:(了解) 1.1.5 Web 监听器预览(扩展-自学了解...) 域对象本身 域对象属性 特殊 javabean 在 session 作用域 1.1.6 定时器(扩展-自学了解) 1.1.1 概述 什么监听器 所谓的监听器是指对整个 WEB 环境的监听...监听器最常见的应用场景: Java SE GUI 编程 Android 手机开发编程 监听器的编写流程 1. 编写监听器实现类,需要实现指定的接口 2....监听器对象:用于监听“事件源”的对象 3. 注册(绑定):将“监听器对象”注册给“事件源”。当“事件源”发生某些行为时,监听对象将被执 行。 4. 事件:事件源行为的称呼。...事件对象:在“监听器对象”中获得“事件源” . 1.1.5 Web 监听器预览(扩展-自学了解) JavaEE 规范规定了 8 个监听器接口,用于监听不同的 WEB 对象。

1.1K20

翻译翻译,什么继承!

什么是继承 继承是面向对象三大特征之一。 从字面意思理解就是“通过继承一个人的财产,从一无所有变得无所不有。”...为什么要用继承 先看一下下面的例子: 新建一个学生类 public class Student { // 姓名 private String name; // 年龄 private...System.out.println("老师年龄:"+teacher.getAge()); teacher.eat(); } } 运行结果: 3.3 继承的特点 1. java...5. java 中所有类默认继承 Object 类,Object 类是所有类的根类(老祖宗)。 3.4 继承使用的场景 你创建了很多类,这些类有很多相同的属性或者方法,可以用继承。 4....上面的例子中输出的是一串内存地址,我们不知道什么意思,可以通过重写 Object 类的 toString() 方法来输出对象属性信息。

2.5K30

翻译翻译,什么接口!

什么是接口 我们知道抽象类里面可以有普通方法也可以有抽象方法,子类继承抽象类必须要实现父类的抽象方法。 而接口是一种特殊的抽象类,特殊在哪里?特殊在它比较头铁,只出售抽象方法。...java 中接口使用 interface 关键字定义,例如: [修饰符列表] interface 接口名{} // 定义一个学生接口 public interface StudentService {...接口即便是一种特殊的抽象类那它也是抽象类啊,为什么没有构造方法? 前面我在讲抽象类的时候说过,抽象类的构造方法是为了创建子类对象的时候初始化属性用的。...你可以把接口的实现理解成继承,但是实现接口不是继承父类,只有继承才有子类,而实现接口方法的接口实现类,所以创建接口实现类不需要用到接口的构造方法。 实现接口主要是实现接口声明的方法,核心是什么?...这些都是关于接口的例子,从上面你可以看出接口有什么好处?可扩展性。 用专业的话来说面向接口编程可以降低程序的耦合度、提高程序的可扩展性。 方法的调用者只用面向接口,调用接口的方法。

2.5K20
领券