Java 语言基础之函数
函数的定义:
- 函数就是定义在类中的具有特定功能的一段独立小程序
- 函数也称为方法
函数定义格式:
修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2,...)
{
执行语句;
return 返回值;
}
备注:
- 如果函数没有具体的返回值,则返回值类型为 void; 此时,函数中 return 语句可以省略不写;
- 函数返回值类型和参数类型没有直接关系
定义函数需要考虑两方面:
- 这个函数的结果是什么? 其实就是在明确函数的返回值类型
- 这个函数实现过程中是否需要未知内容参与运算? 即函数的参数列表(参数个数和参数类型)
注意:
- 函数中只能调用函数,不可以在函数内部定义函数
- 定义函数时, 函数运行的结果应该返回给调用者, 由调用者处理该结果
错误示例一:在主函数中定义函数
class FunctionDemo
{
public static void main(String[] args)
{
public static void myPrint()
{
System.out.println("Hello world!");
}
}
}
错误示例二:
根据考试成绩获取学生分数对应的等级:
90~100 A
80~89 B
70~79 C
60~69 D
60以下 E
分析: 函数结果: 对应的等级, 类型为字符, 即 char
函数参数: 学生分数, 类型为整型, 即 int
public static char getLevel(int num)
{
char level;
if(num>=90 && num<=100)
level = 'A';
else if(num>=80 && num<=89)
level = 'B';
else if(num>=70 && num<=79)
level = 'C';
else if(num>=60 && num<=69)
level = 'D';
else if(num<60 || num>100)
level = 'E';
return level;
}
编译失败原因:
编译主要检查语法错误,不进行运算. 如果上述四个 else 都不满足, level 没有值, 相当于没有初始化.需要将最后一个 else if 该为 else.
函数的特点:
- 将功能代码进行封装
- 提高了代码的复用性
函数的重载
概念: 在同一个类中, 允许存在一个以上的同名函数, 只要它们的参数个数或者参数类型不同即可.
注意: 与返回值类型无关, 只看参数列表(参数个数或参数类型)
原因: java 是严谨性语言, 如果只有函数返回值不同, 会出现函数调用的不确定性, 编译失败.
参考资料:
JavaSE 基础视频(毕向东)
Java 语言基础之函数的更多相关文章
- Java之--Java语言基础组成—函数
Java语言基础组成-函数 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的函数,函数 ...
- 第二十三节:Java语言基础-详细讲解函数与数组
函数 函数在Java中称为方法,在其他语言中可能称为函数,函数,方法就是定义在类中具有特定功能的程序.函数,在Java中可称为方法. 函数的格式: 修饰符 返回值类型 函数名(参数类型 参数1, 参数 ...
- Java学习总结(二)----Java语言基础
1. Java语言基础 2.1 关键字 定义:被java语言赋予特殊含义的单词 特点:关键字中的字母都为小写 用于定义数据类型的关键字 class,interface,byte,short,i ...
- Java之--Java语言基础组成—数组
Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...
- Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)
Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...
- 第二十六节:复习Java语言基础-Java的概述,匿名对象,封装,构造函数
Java基础 Java语言概述 Java语言 语言 描述 javaee 企业版 javase 标准版 javame 小型版 JDK JDK(Java开发工具包) Java语言 语言 Java语言 Ja ...
- 第二十五节:Java语言基础-面向对象基础
面向对象 面向过程的代表主要是C语言,面向对象是相对面向过程而言,Java是面向对象的编程语言,面向过程是通过函数体现,面向过程主要是功能行为. 而对于面向对象而言,将功能封装到对象,所以面向对象是基 ...
- 【Java初探02】——Java语言基础
本篇博文就Java语言的一些基本元素进行一些记录和阐述,主要讲解一下Java语言的一些基本构成元素和Java的主类结构. Java语言基础的大致组成 java主类结构 基本的数据类型 变量与常量 运算 ...
- day04<Java语言基础+>
Java语言基础(循环结构概述和for语句的格式及其使用) Java语言基础(循环结构for语句的练习之获取数据) Java语言基础(循环结构for语句的练习之求和思想) Java语言基础(循环结构f ...
随机推荐
- C# DateTime 时间格式
//2008年4月24日 System.DateTime.Now.ToString("D"); //2008-4-24 System.DateTime.Now.ToString(& ...
- offsetof宏的实现
1.c语言的结构体中,因为字节对齐的问题,导致成员地址并不能根据类型的大小进行计算.例如: struct test { char ch; int a; } printf("test的大小=% ...
- SMP
SMP(Symmetrical Multi-Processing):对称多处理技术,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构. 在smp系统中,所有的CP ...
- jdk8 Function
例子 1: // 定义function Function<String, String> fun = parm -> { // 这里是定function中的逻辑 return Str ...
- Linux多条指令之间;和&&
Linux 中经常使用到一个命令,如 make && make install,这里也可以使用 make ; make install,那么在 Linux 中执行命令 ; 和 & ...
- thinkphp 读取页面报错 说 /Runtime/Cache/Home/XXXXXX.php 错误
thinkphp _STORAGE_WRITE_ERROR_:./Runtime/Cache/Home/xxxx.php 这一种报错一般是在linux 才会出现的错误,因为是权限问题.把Home文件加 ...
- VS2010之– Web Development(四)-将WebApplication打包发布到IIS
下面将介绍怎样将一个WebApplication在VisualStudio中直接打包发布到IIS上去. 首先需要使用Administrator的身份运行Visual Studio. Task 1 – ...
- 【BZOJ】3392: [Usaco2005 Feb]Part Acquisition 交易(spfa)
http://www.lydsy.com/JudgeOnline/problem.php?id=3392 同1674 #include <cstdio> #include <cstr ...
- 对Linux命令进一步学习vim(二)
今天,进一步学习Linux相关的命令,可能会有重复的地方,但学习本来就是不断重复的过程.故作小记! 1.安装了:vim ,,,一款Linux爱好者经常用到的ide sudo apt-get inst ...
- (转)java Exception层次结构详解
转自:http://www.importnew.com/14688.html 1. JAVA异常层次结构 异常指不期而至的各种状况,如:文件找不到.网络连接失败.非法参数等.异常是一个事件,它发生在程 ...