一、无参方法
public class JavaA {
public void hello(){
System.out.println("my name is A ! ");
}
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
}
}
1. 方法定义:
public void hello(){
System.out.println("my name is A ! ");
}
代码 |
含义 |
public |
访问权限,公开 |
void |
返回值类型,为空 |
hello |
方法名 |
() |
请求参数,为空 |
{} |
方法体,{开始,}结束 |
System... |
方法内容为输出一个字符串到控制台 |
2. 方法使用
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
}
代码 |
含义 |
main方法 |
程序入口 |
JavaA |
引用变量类型 |
obj |
引用变量名,变量名可以随便取 |
= |
赋值符号,比如a=10,name=“guoya” |
new |
调用构造器,初始化对象 |
JavaA |
要初始化的对象类型的构造方法名 |
() |
构造方法的参数,此处为空 |
; |
分号结束一条命令 |
obj |
使用引用变量 |
. |
调用对象的属性或方法,相当于什么“的”什么 |
hello() |
调用hello方法,参数为空 |
; |
分号结束一行 |
3. 练习
- 打开notepad
- 新建一个文件夹:02_方法
- 定义类JavaA
- 定义方法hello
- 写main方法
- 实例化JavaA,调用javaA的hello方法
- 打开git-bash
- javac编译
- java执行
二、有参方法
public class JavaA {
public void hello(){
System.out.println("my name is A ! ");
}
public void sayHello(String name){
System.out.println("my name is " + name);
}
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
obj.sayHello("guoyasoft");
}
}
1. 定义有参函数
public void sayHello(String name){
System.out.println("my name is " + name);
}
代码 |
含义 |
public |
访问权限,公开 |
void |
返回值类型,为空 |
sayHello |
方法名 |
() |
请求参数 |
String |
参数类型,String 表示是字符串 |
name |
参数名称 |
{} |
方法体,{开始,}结束 |
System... |
方法内容为输出一个字符串到控制台 |
"my name is " |
字符串 |
+ |
如果是数字1+2=3,如果是字符串“ab”+“cd”=“abcd” |
name |
取变量的值,定义变量:变量类型 变量名=变量值;使用变量:变量名 |
2. 使用有参函数
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
obj.sayHello("guoyasoft");
}
代码 |
含义 |
main方法 |
程序入口 |
JavaA |
引用变量类型 |
obj |
引用变量名 |
= |
赋值符号,比如a=10,name=“guoya”,如果引用变量,调用构造器方法初始化对象 |
new |
调用构造器,初始化对象 |
JavaA |
要初始化的对象类型的构造方法名 |
() |
构造方法的参数,此处为空,只要名字后面跟括号,就是方法 |
; |
分号结束一条命令 |
obj |
使用引用变量 |
. |
调用对象的属性或方法,相当于什么“的”什么 |
hello() |
调用hello方法,参数为空 |
; |
分号结束一行 |
obj |
使用引用变量 |
. |
调用对象的属性或方法,相当于什么“的”什么 |
sayHello("guoyasoft") |
调用sayHello方法,参数为"guoyasoft" |
; |
分号结束一行 |
等价于:
String name="QA";
System.out.println("my name is " + "QA");
3. 练习
1. 打开notepad,修改JavaA
2. 添加有参方法sayHello(String name)
3. 修改main方法,调用sayHello()
4. 打开git-bash
5. javac编译
6. java执行
7. 修改main方法调用sayHello传入的参数,编译执行看打印变化
8. 调整方法的位置顺序,编译执行,看是否不同
三、有返回值的方法
public class JavaA {
public void hello(){
System.out.println("my name is A ! ");
}
public void hello(String name){
System.out.println("my name is " + name);
}
public String ask(String name){
System.out.println("my name is " + name);
return "What's your name ?";
}
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
obj.hello("guoyasoft");
String result=obj.ask("guoyasoft");
System.out.println(result);
}
}
1. 方法定义:
public String ask(String name){
System.out.println("my name is " + name);
return "What's your name ?";
}
代码 |
含义 |
public |
访问权限,公开 |
String |
返回值类型,String表示字符串类型,即双引号(如"abc"、"中国")表示的串 |
ask |
方法名 |
() |
请求参数 |
String |
参数类型 |
name |
参数名称叫name |
{} |
方法体,{开始,}结束 |
System... |
方法内容为输出一个字符串到控制台 |
return |
返回 |
"What's your name ?" |
返回一个字符串,如果要返回空,就用return null ;其中null表示空 |
; |
结束一条命令 |
2. 方法使用
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
obj.hello("guoyasoft");
String result=obj.ask("guoyasoft");
System.out.println(result);
}
代码 |
含义 |
main方法 |
程序入口 |
JavaA |
引用变量类型 |
obj |
引用变量名 |
= |
赋值符号,比如a=10,name=“guoya” |
new |
调用构造器,初始化对象 |
JavaA |
要初始化的对象类型的构造方法名 |
() |
构造方法的参数,此处为空 |
; |
分号结束一条命令 |
String result |
定义一个变量,变量类型为String,变量名为result(变量名随便取) |
= |
赋值符,即给前面定义的变量result赋值 |
obj |
使用引用变量 |
. |
调用对象的属性或方法,相当于什么“的”什么 |
ask("guoyasoft") |
调用ask方法,参数为"guoyasoft",该方法会返回一个String字符串结果,该结果通过“=”赋值给前面的变量 |
; |
分号结束一行 |
四、重载
方法名相同,但是参数不同,会被当做不同的方法
方法名和形参数据类型列表可以唯一的确定一个方法,与方法的返回值一点关系都没有
public class JavaA {
public void hello(){
System.out.println("my name is A ! ");
}
public void hello(String name){
System.out.println("my name is " + name);
}
public static void main(String[] args) {
JavaA obj=new JavaA();
obj.hello();
obj.hello("guoyasoft");
}
}