方法
请根据自己语言回答下面问题:
1、什么是参数列表,什么是返回值类型
参数列表 :参数的数据类型
参数的顺序
参数的个数
返回值类型:根据方法功能需求的所定义的返回值类型
无返回值的方法是void
有返回值的方法是根据功能的定义,看需要什么返回值类型
可能是基本类型,也可能是引用数据类型
2、return的类型一定要和返回值类型相同么?为什么?
必须和返回值类型相同,
返回值类型代表该方法运行最后需要传出的数据类型,
而传出的数据类型的格式为 return 对应的数据类型的值;
不然的话编译报错
3、return后面能写代码么?为什么?
不能写代码,return代表方法结束的意思,
当方法运行到return之后,就会结束该方法,
而return后的代码肯定不会被运行,所以是没有意义的,如果在return后编写代码编译器会报错
4、什么是方法的重载?方法的重载有什么好处?
方法名一致,方法参数列表不一致的多个方法称为方法的重载
坏处 :方法的重载代表的是许多相似逻辑的代码,而只是参数类型不同而已
如果没有方法重载而去定义多个不同的方法(但是逻辑相同)
这样对编写效率或者用户体验都会非常的差,在调用的时候需要调用多个方法
好处: 不需要调用多个不同的方法,只需要修改多个同名方法的参数列表
就可以适用不同参数的场景,在调用的时候只需要传入不同的参数,
而编译器会根据参数的不同选择对应的重载方法,提高了用户体验
总结:使用重载是因为代码逻辑相同,但是为了适应传入不同参数且方法名一致的场景
避免定义多个不同方法名但是相同逻辑而使用重载
5、满足方法的重载条件,与什么有关?与什么无关?
(1)判断是不是方法的重载四要素
方法名,参数类型,参数顺序,参数个数
方法名相同,参数类型不同,参数顺序不同,参数个数不同
(2)与返回值类型和权限修饰符无关
6、参数列表不同,有哪几种情况?
三种情况
参数类型不同,参数顺序不同,参数个数不同三种满足一种且方法名一致就是方法重载
7.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
(1)传递的是实参(值),将实参赋值给形参,而形参做出改变对实参无影响
总的说就是实参和形参处在栈内存中的不同空间(方法不同),没有共享
(2)传递的是对象的地址值,将实参赋值给形参
实参和形参在堆内存中的相同空间,共享同一个数据,所以改变方法中的形参会对实参做出改变 |