什么是方法?
方法是程序中最小的执行单元.
实际开发中,什么时候用到方法?
重复的代码,具有独立功能的代码可以抽取到方法中
有哪些好处?
可以提高代码的复用性
可以提高代码的可维护性
形参:即形式参数,是指方法定义中的参数
实参:即实际参数,是指方法调用中的参数
带返回值的方法:
格式:public static 返回值类型 方法名(参数){
方法体;
return 返回值;}
什么时候用到有返回值的方法?
在调用处要根据方法的结果,请编写例外一段代码
有返回值方法的调用格式:直接调用,赋值调用,输出调用\
注意事项:
方法不调用就不执行
方法与方法之间是平级关系,不能互相嵌套定义
方法的编写顺序与执行顺序无关
方法的返回值类型为void,表示该方法没有返回值,没有返回值的方法可以省略return语句不写,如果要编写return,后面不能跟具体的数据
return语句下面,不能不能编写代码,因为永远执行不到,属于无效代码
return关键字
方法没有返回值:可以省略不写,如果书写,表示结束方法
方法有返回值:必须要写,表示结束方法和返回结果
方法的重载
在同一个类中,定义了多个同名的方法,这些同名的方法具有同种的功能
每个方法具有不同的参数类型或参数个数,这些同名的方法,就构成了重载关系,与返回值无关
Java虚拟机会通过参数的不同来区分同名的方法
public class Teacher extends Person{
@Override
public void show() {
System.out.println("老师的信息为"+getName()+","+getAge());
}
}
public class Student extends Person{
@Override
public void show() {
System.out.println("学生的信息为"+getName()+","+getAge());
}
}
public class Person {
private String name;
private int age;
public Person() {
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void show(){
System.out.println("信息为"+getName()+","+getAge());
}
}
public class Administor extends Person{
@Override
public void show() {
System.out.println("管理员的信息为"+getName()+","+getAge());
}
}
public class Test {
public static void main(String[] args) {
Student s=new Student();
s.setName("小羽");
s.setAge(18);
Teacher t=new Teacher();
t.setName("小玺");
t.setAge(28);
Administor a=new Administor();
a.setName("小千");
a.setAge(28);
register(s);
register(t);
register(a);
}
public static void register(Person p){
p.show();
}
}