Java连载31-递归方法练习、面向对象
2019-09-18 00:55
1236 查看
一、实现阶乘(一种用递归,一种普通方法)
public static void main(String[] args) { System.out.println(factorial(5)); System.out.println(factorial_recursion(5)); } //普通循环结构实现阶乘 public static int factorial(int n) { int i = 1; int result = 1; for(;i<=n;i++) { result *= i; } return result; } //递归方法实现阶乘 public static int factorial_recursion(int n) { if (n == 1) return 1; else return (n * factorial_recursion(n-1)); };
二、面向对象(Java语言核心内容)
1.面向过程和面向对象的区别
(1)面向过程:主要关注点是:实现的具体过程,因果关系
优点:对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本低
缺点:采用面向对象的方式开发很难解决非常复杂的业务逻辑,另外面向过程的凡是导致最终的软件扩展能力差,另外,没有独立体的概念,所以无法达到组件复用。
(2)面向对象:主要关注点是:对象(独立体)能完成哪些功能。(独立显卡的开发思路)
优点:耦合度低,扩展能力强,更容易解决现实世界中复杂的业务逻辑,组件复用性
缺点:前期投入成本较高,需要进行独立体的抽取,大量的系统分析与设计。
(3)C语言是纯面向过程的,C++是半面向对象,Java是纯面向对象
(4)面向对象更符合人的思维方式,越来越多的新语言是面向对象。
2.面向对象的三大特性
(1)封装(2)继承(3)多态
三、源码:
D31_two_method_of_factorial.java
地址:
https://github.com/ruigege66/Java/blob/master/D31_two_method_of_factorial.java
2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料
相关文章推荐
- JAVA语言基础:数组 | 方法的递归 | 面向对象
- JAVA面向对象基础:成员变量、方法、方法的重载、构造函数
- 黑马程序员--03.Java面向对象--02.【static关键字】【main方法】【静态成员】
- JAVA面向对象-----main方法详解
- java例程练习(用递归方法列出文件目录)
- java面向对象思想简单练习
- JAVA之旅(二十二)——Map概述,子类对象特点,共性方法,keySet,entrySet,Map小练习
- JAVA基础 day22 File类的方法和应用 利用递归获取目录下的所有文件 Properties类的应用(和IO技术结合,存取配置文件) 打印流和合并流等功能类的学习应用 切割文件练习
- java基础——面向对象设计方法
- Java中类与对象 面向对象 对象的方法属性 构造方法(持续更新Ing)
- 黑马程序员---java基础---面向对象中的构造方法及static关键字,变量的问题
- java面向对象中的方法重载与方法重写的区别
- 有关JAVA的面向对象程序设计方法较全面介绍的一本书
- Java面向对象-static关键字、静态方法与普通方法、静态成员变量
- Java面向对象-递归
- 学习练习 java面向对象封装汽车
- Java菜鸟学习笔记--面向对象篇(十六):Object类方法
- Java面向对象基础--理解main方法
- java面向对象中的String类中12种常用的方法
- [2013-11-28]JAVA笔记_面向对象基础、方法重载