4-5 类的成员之二: 方法(Method)
一、“万事万物皆对象”**:(理解)
1、在 Java 语言范畴中,我们都将功能、结构等封装到类中,通过类的实例化,来调用具体的功能结构
>Scanner,String 等
>文件:File
>网络资源: URL
2、涉及到 java 语言与前端 html、后端数据库交互时,前后端的结构 在 Java 层面交互时,都体现为类、对象
二、内存解析说明
1、引用类型的变量,只可能存储两类值:null 或者地址值(含变量的类型)
三、匿名对象
1、我们创建的对象没有显示的赋给一个变量名。如 new phone();
2、特征:匿名对象只能使用一次
3、匿名对象使用: PhoneMail(new phone());
4-6 再谈方法
4.6.1 方法的重载
a.概念:在同一个类中,允许存在一个以上的同名方法,只要他们的 参数个数或者类型不同即可
归纳口诀:“两同一不同”:同一个类、相同的名字。参数列表不同:参数个数不同,参数类型不同
b.举例:
Arrays 类中 重载的 sort()/ binarySearch
如上图所示:binarySearch()很多同名,只是里面的 形参不同
c.判断是否为重载:
跟方法的权限修饰符、返回值类型、形参变量名、方法体都没关系。只和参数列表不同
d. 在通过对象调用方法时,如何确定某一个指定的方法:方法名---->参数列表
4.6.2 可变个数形参的方法
a.概念:允许直接定义能和多个实参相匹配的形参
JDK 5.0 新增的内容
格式: 数据类型 … 变量名
例如
public void show (String ... strs){
}
Tips:当调用可变个数的形参方法时候,传入的参数个数可以是 0,1,2… 都可以匹配到
当可变个数形参的方法与本类中方法名相同,形参不同的方法之间构成重载
当可变个数形参的方法与本类中方法名相同,形参类型也相同的数组之间不构成重载
当可变个数形参在方法的形参中,必须声明在末尾 例如: public void show(int i, String … strs){
}
当可变个数形参在方法的形参中,最多只能声明一个形参
4.6.3 方法参数的值传递机制(important)
关于变量的赋值:
如果变量为基本数据类型,此时,赋值的是变量所保存的数据
如果变量是引用数据类型,此时,赋值的是变量所保存的数据地址值
方法的形参传递机制:值传递
1、形参:定义方法时,声明在小括号内的参数
实参:在调用方法时,实际传递给形参的数据
2、值传递机制:
如果参数为基本数据类型,此时,实参赋给形参是真实数据值
如果参数是 引用数据类型,此时,实参赋给形参的是实参存储数据的地址值
4.6.4 递归方法(recursion)(了解一下)
概念:一个方法调用它自身,并且有一个出口
例子:计算 1 到 100之间所有自然数的和
public int getSum(int n){ //n为 100 即求 1-100 之和
if(n==1){
return 1;
}else {
return n+getSum(n-1);
}
}
总结
今日学习重点是方法参数的传递机制,里面和变量赋值比较相似,多去想一想,重点去感悟其过程。明日需要多敲代码,回顾一下今日所学!
革命尚未成功,继续努力!!!