Java学习笔记-函数
Java也有着函数的概念,不过在OOP中,函数用作方法称呼
函数的定义
函数就是定义在类中的具有特定功能的一段独立小程序
函数也称为方法
函数的格式
修饰符返回值类型函数名(参数类型形式参数1,参数类型形式参数2,) {
执行语句;
return 返回值;
}
- 返回值类型:函数运行后的结果的数据类型
- 参数类型:是形式参数的数据类型
- 形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数
- 实际参数:传递给形式参数的具体数值
- return:用于结束函数
- 返回值:该值会返回给调用者
函数的特点
- 定义函数可以将功能代码进行封装
- 便于对该功能进行复用
- 函数只有被调用才会被执行
- 函数的出现提高了代码的复用性
- 对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写。
注意:
- 函数中只能调用函数,不可以在函数内部定义函数
- 定义函数时,函数的结果应该返回给调用者,交由调用者处理
函数的应用
两个明确
- 明确要定义的功能最后的结果是什么
- 明确在定义该功能的过程中,是否需要未知内容参与运算
示例:
需求:定义一个功能,可以实现两个整数的加法运算
分析:
- 该功能的运算结果是什么?两个数的和,也是一个整数(int)
- 在实现该功能的过程中是否有未知内容参与运算?加数和被加数是不确定的。(两个参数int,int)
- 代码:
int getSum(int x,int y) {
return x + y;
}
函数的重载
重载的概念
在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不同即可重载的特点:与返回值类型无关,只看参数列表
重载的好处:方便于阅读,优化了程序设计
重载示例:
//返回两个整数的和
int add(int x,int y){
return x + y;
}
//返回三个整数的和
int add(int x,int y,int z){
return x + y + z;
}
//返回两个小数的和
double add(double x,double y){
return x + y;
}
说明
这里只是引出函数的概念,关于函数在类的部分会详细介绍
Java学习笔记-函数的更多相关文章
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- [java学习笔记]java语言核心----面向对象之this关键字
一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理: 代表的是当前对象. this就是所在函数 ...
- [java学习笔记]java语言核心----面向对象之构造函数
1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用: 给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果 ...
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- java学习笔记15--多线程编程基础2
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note15.html,转载请注明源地址. 线程的生命周期 1.线程的生命周期 线程从产生到消亡 ...
- java学习笔记14--多线程编程基础1
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note14.html,转载请注明源地址. 多线程编程基础 多进程 一个独立程序的每一次运行称为 ...
- java学习笔记13--反射机制与动态代理
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note13.html,转载请注明源地址. Java的反射机制 在Java运行时环境中,对于任意 ...
随机推荐
- mybatis配置和映射文件
配置: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configurationPUBLIC ...
- VMware WorkStations最小化安装&配置&卸载CentOS 7
所需软件: VMware WorkStations,CentOS 7镜像文件(可以在CentOS官网下载) 1.打开VMware WorkStations,点击创建虚拟机 2.选择典型,点击下一步 3 ...
- 捕获错误并处理try-catch
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- STS创建spring boot项目,pom.xml文件第一行报错
亲测能用url地址:https://blog.csdn.net/jrx1995/article/details/100008552
- ue/um-editor实现word图片复制
图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码 目前限chrome浏览器使用,但是项目要求需要支持所有的浏览器,包括Windows和macOS系统.没有办 ...
- bzoj4400
/* * 此题同bzoj2725 * 增加了枚举边的操作 */ #include <bits/stdc++.h> ;// oo = 999999999; #define LL long l ...
- mac charles 代理https
1.安装根证书:help - ssl proxying - install charles root certificate 2.这时候会弹出一个根证书界面,如果没有弹出,则可以去chrome,高级设 ...
- linux安装过程中遇到的一些问题总结
后面持续更新 1.安装之后查看显示一直连不上网 vim /etc/sysconfig/network-scripts/ifcfg-eth0 然后应该就可以上网了 2.linux窗口无法适应虚拟机窗口 ...
- js 移除数组中的内容
使用方法:arr.splice(arr.indexOf(ele),length):表示先获取这个数组中这个元素的下标,然后从这个下标开始计算,删除长度为length的元素 这种删除方式适用于任何js数 ...
- linux下的什么工具可以用来查看PostScript文件?
答: ghostview,官网在这里