函数初了解
来源:互联网 发布:什么是淘宝直通车图片 编辑:程序博客网 时间:2024/06/03 22:41
一、函数(用来解决一类问题的代码的有序组合,是一个功能模块)
1.格式:修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…)
{
执行语句;
return 返回值;
}
2.修饰符:方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用
3.返回值类型:方法运行后的结果的数据类型,如果方法不返回任何值,则返回值类型指定为 void ;如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值
4.参数类型:是形式参数的数据类型。
5.形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。
6.实际参数:传递给形式参数的具体数值,基本数据类型。
如果参数是基本数据类型就存放在栈内存中,如果是对象就存放在堆内存中。
7.return:用于结束函数。
* return和break以及continue的区别?
* return是结束方法
* break是跳出循环
* continue是终止本次循环继续下次循环
8.返回值:该函数运算的结果,该结果会返回给调用者
9.注意点:当函数没有返回值时,调用函数时不能使用变量去接收。
没有返回值的函数在函数末尾可以加上return,如果不加,虚拟机会自动加上(任何一个函数对于虚拟机来说都是有返回值的)。
10.函数是并级的,函数不能嵌套,不能放在类外面。
11.void 的返回值是空的,所以可以不用return
其他的在定义函数时都要return+函数名(放最后),在输出时需要用一个变量来接收,int 变量名 = 函数名()。
boolean 类型的在定义是默认为false, (boolean isEuqals = false;)
12.return 语句结束方法的运行、返回值
方法里只有值传递 没有引用传递
13.函数的特点:
*定义函数可以将功能代码进行封装
*便于对该功能进行复用
*函数只有被调用才会被执行
*函数的出现提高了代码的复用性
*对于函数没有返回值的情况,返回值类型用关键字void 修饰,那么该函数中return语句如果在最后一行可以省略不写
*函数中只能调用函数,不能在函数内部定义函数
*定义函数时,函数的结果应该返回给调用者,交给调用者处理。
14.两个明确:
*明确要定义的功能最后的结果是什么?
*明确在定义该功能的过程中,是否需要未知内容参与运算
15.设计函数的原则:方法的本意是功能块,
* a:方法不调用不执行
* b:方法与方法是平级关系,不能嵌套定义
* c:方法定义的时候参数之间用逗号隔开
* d:方法调用的时候不用在传递数据类型
* e:如果方法有明确的返回值,一定要有return带回一个值
二、函数的应用
1.无参无返回值
当需要调用方法执行某个操作时,可以先创建类的对象,然后通过 对象名.方法名(); 来实现
2.无参带返回值
由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理。
只能有一个返回值,且类型必须兼容(如果返回值类型为int 则不能返回String类型)
3.带参无返回值
调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应
调用方法时,实参不需要指定数据类型
方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 String、数组等
当方法参数有多个时,多个参数间以逗号分隔
4.带参带返回值
带参数方法的返回值可以为 void
三、函数的重载
1.概念:同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。
当调用被重载的方法时, Java 会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行。
2.判断方法重载的依据:
a. 必须是在同一个类中
b.方法名相同
c.方法参数的个数、顺序或类型不同
d.与方法的修饰符或返回值没有关系
3.特点:与返回值类型无关,只看参数列表,没有返回值的函数不能重载。
4.好处:方便于阅读,优化了程序设计。
Math.random() 生成 0--1 的浮点数。
四、Scanner(从键盘录入数据到控制台)
1.位置:java.until .Scanner (扫描控制录入数据)
2.参数:System.in
3.获取int 类型: s.nextInt()
4.导入:import java.util.Scanner;
创建Scanner对象:Scanner input=new Scanner(System.in);
输入信息:System.out.println("");
获取值:int score =input.nextInt();
5.获取字符串:s. nextLine()
6. 申明一个函数只能用一种类型的Scanner
五、Java中的内存分配以及栈和堆的区别
* A:栈(掌握)
* 存储局部变量 (用于存储函数里面的局部变量,当数据用完的时候,所占的空间会立即自动释放)
* B:堆(掌握)
* 存储new出来的数组或对象 (存储的是对象,数组等,等对象失去)
* C:方法区
* 面向对象部分讲解 (应用程序可以直接操作的)
* D:本地方法区
* 和系统相关
* E:寄存器
* 给CPU使用
阅读全文
0 0
- 函数初了解
- 了解函数
- 了解DLL函数
- 了解虚函数(引用)
- 了解UpdataData函数
- 了解smarty自定义函数
- 了解函数queue_delayed_work()
- 了解MYSQL Cast函数
- 了解lambda函数
- C函数_fileno了解
- 了解Javascript函数:parseInt()
- 深入了解epoll 函数
- 深入了解epoll 函数
- 了解MYSQL Cast函数
- 了解SYSDATE函数
- 进一步了解scanf函数!!!
- 自定义函数初步了解
- php Hash函数了解
- Red black tree
- Nginx安装、配置及使用总结
- Red Giant Trapcode Suite 12.0 含注册码
- iOS开发笔记之六十五——两种截屏方案的对比
- 【Eternallyc】qsort排序函数用法
- 函数初了解
- JavaEE----JPA中配置文件persistence.xml
- 密码验证合格程序
- Search for a Range
- Nginx安装、配置及使用总结
- 关键字register static const #define用法总结
- caffe网络结构可视化
- Android中AIDL的使用(一)
- struts2使用modeldriven执行转向更新页面是直接将getByID()获取到的值赋值给model数据不回显