java学习笔记5(方法)
方法:
1.如何创建方法
修饰符 返回值类型 方法名(参数){被封装的代码段}
2.方法的定义和使用的注意事项:
a:方法不能定义在另一个方法里面;
b:方法 名字和方法的参数列表,定义和调用时要保持一致,不能出错;
c:方法的返回值类型为空(void)时,可以省略return不写;调用方法不能写在输出语句中;
d:返回值类型不为空时,return后的数据类型要与定义方法的返回值类型一致,return后面不能再写代码;
求和方法如下:
public class MothedDemo{
public static void main(String[] args){
int sum=sum(3,4);//调用方法sum();
System.out.println("和为"+sum);
}
public static int sum(int x,int y){//定义方法sum();
return x+y;//返回值为x+y;
}
}
3.方法的重载
重载:在同一个类中,方法名相同,参数列表不同。与返回值的类型无关。
参数列表不同包括:1.参数的个数不同;
2.参数的类型不同
重载例子:
public class MothedDemo{
public static void main(String[] args){
int sum=sum(3,4);
double sum1=sum(5,6,7);
double sum2=sum(5,4);//发生了隐式转换,将5,4转换为double类型
System.out.println("和为"+sum);
System.out.println("和为"+sum1);
System.out.println(sum2);
}
public static int sum(int x,int y){
return x+y;
}
public static double sum(double x,double y, double z){
return x+y+z;
}
public static double sum(double x,double y){
return x+y;
}
}
方法重载注意:
参数个数不一样,或者参数类型不一样。
重载和返回值类型无关,和参数名无关。
技巧:重载看方法名和参数列表
方法的参数是基本类型时传递的是值,方法的参数是引用类型时传递的时内存地址;
参数为引用类型的例子:
public class MothedDemo1{
public static void main(String[] args){
int[] arr={1,2,3};
change(arr);
int x=2;
change(x);
System.out.println(arr[1]); //输出结果66
System.out.println(x); //输出结果2
}
public static void change(int[] a){
a[1]=66;
}
/*本例中,change()方法返回值类型为空,但是change()方法的参数为引用型,因此传递的是arr数组的内存地址,
再调用change()方法时,通过地址更改了arr[1]的值,在main方法中与在change()方法中,数组的内存地址时相同的,
因此数组的值彻底改变了,main()方法输出的结果为66;为了对比,我们用一个参数为基本类型的方法来比较*/
public static void change(int x){
/*当方法的返回值类型为空,参数为基本类型时,在调用该方法时,传递的是值2,把2的值改为5,但是void并没有返回值,
因此该方法并不能把重新赋值的5传递回main方法内,main方法在输出时仍输出x原来的值,输出2*/
x=5;
}
}
4.自定义类的概述
用自定义方法实现事物的过程,就是定义类的过程。
自定义类的格式
public class 类名{
//属性定义:
修饰符 数据类型 变量名=值;
//方法定义:
修饰符 返回值类型 方法名(参数列表){
}
}
java学习笔记5(方法)的更多相关文章
- Java学习笔记之---方法和数组
Java学习笔记之---方法与数组 (一)方法 (1)什么是方法? 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 (2)方法的优点 使程序变得更简短而 ...
- 0019 Java学习笔记-面向对象-方法
方法属于谁 方法要么属于类,要么属于对象 static修饰的方法属于类 没有static修饰的方法属于对象 方法只能定义在类里面,不能独立定义 不能独立的执行方法,要么通过类调用,要么通过方法调用 一 ...
- Java学习笔记之方法重载,动态方法调度和抽象类
一.方法重载 如果子类中的方法与它的超类中的方法有相同的方法名,则称子类中的方法重载超类中的方法,特别是当超类和子类中的方法名和参数类型都相同时,在子类中调用该方法时,超类中的方法会被隐藏.考虑下面程 ...
- 【原】Java学习笔记008 - 方法(函数)
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 方法/函数 Met ...
- Java学习笔记之方法重载
被重载的方法必须具有不同的参数列表.不能基于不同修饰符或返回值类型来重载方法. package welcome; public class TestMethodOverloading { public ...
- Java学习笔记之——方法重载
方法重载: overload 1. 方法签名 组成:方法名(参数列表) 参数列表不同分为哪些情况? (1)有无参数 (2)参数的类型 (3)参数的个数 (4)参数的顺序(前提是类型不一样) 2.方法重 ...
- Java学习笔记day05_方法重载
1.方法的重载overload 在同一个类中, 允许出现同名的方法, 只要方法的参数列表不同即可. 参数列表不同: 参数个数不同, 参数类型不同, 顺序不同. public class MethodO ...
- Java 学习笔记之 方法内的临时变量是线程安全
方法内的临时变量是线程安全: 方法内部的私有变量,是线程安全的. public class HasSelfPrivateNum { public void addI(String username) ...
- Java学习笔记之方法
前言:如果把所有代码都写到main方法中,后果是什么? 1,结构混乱 不清晰 2,不能重用 方法:规则:方法写在类中,不能写在其它方法中.方法不能嵌套方法 如何定义方法: 访问修饰符 返 ...
随机推荐
- [Fiddler] ReadResponse() failed: The server did not return a complete response for this request. Server returned 0 bytes.
待解决 [Fiddler] ReadResponse() failed: The server did not return a complete response for this request. ...
- C# 条件表达式max=(a>b)?a:b;含义
a?b:c 这个是条件表达式,表示如果a为真,则表达式值为b,如果a为假,则表达式值为c条件表达式具体说明如下条件语句: if(a>b) max=a; else max=b; 可用条件表达式写为 ...
- 精通Oracle的关键是……(Ask Tom上最经常被问到的问题)(转)
原文地址:http://www.ituring.com.cn/article/37548 这是我在asktom上最经常收到的问题:我需要怎么做才能变成一个专家呢?关于Oracle,有这样的一个关键事物 ...
- Redis开发规范
1.冷热数据分离,不要将所有数据全部都放到Redis中 虽然Redis支持持久化,但是Redis的数据存储全部都是在内存中的,成本昂贵.建议根据业务只将高频热数据存储到Redis中[QPS大于5000 ...
- 如何解决Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 8000401a. 问题
在系统中需要把数据导出到excel并且压缩,然后报了这个问题: 我在网站上找到了方法: 地址:https://social.msdn.microsoft.com/Forums/vstudio/en-U ...
- python3爆力破解rtsp脚本
一.说明 hydra是说已实现了rtsp的爆力破解,但是使用时发现字典中明明已包含正确的用户名密码hydra却还没检测出来: 拦截数据包查看,感觉hydra只是尝试去匿名访问,并没有发送用户名密码去验 ...
- memory prefix il ir im in out 3 i
1● il 2● ir 不 非 无 :使 ~ 成为: 3● im 4● in 不 非 无 :向内,进入
- C#代码中如何比较两个日期的大小?
C#中比较两个日期大小的方法 /// <summary> /// 比较两个日期大小 /// </summary> /// <param name="dateSt ...
- learning ddr Electrical Characteristics and AC Timing
reference: JEDS79-3F.pdf , page:181
- java 的类型转换方式
隐式转换 byte等整型转int,最高位(符号位保留),中间补0 byte bt=-13; bt 源码:1000 1101 反码:1111 0010 补码:1111 0011 int it=bt; i ...