一.学习内容
1.重写 @override
2.重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!
重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。
重载@overlord
方法名相同
方法的参数类型,参数个不一样
方法的返回类型可以不相同
方法的修饰符可以不相同
main 方法也可以被重载
代码如下:
(1)
package demo01;
public class Person {
String name;
int age;
char sex;
public void show() {
System.out.println("姓名:"+name+"年龄:"+age+"性别:"+sex);
}
}
(2)
package demo01;
public class Phone {
String call;
}
(3)
package demo01;
public class Student extends Person {
int sno;
String department;
@Override
public void show() {//重写show()方法
System.out.println("姓名:"+name+"年龄:"+age+"性别:"+sex+"学号"+sno+"院系"+department);
}
}
(4)
```java
package demo01;
public class StudentTest {
public static void main(String [] args) {
Student s=new Student();
s.name="赵强";
s.age=25;
s.sex='男';
s.sno=201001;
s.department="信息工程系";
s.show();
}
}
3.重载
public class Overloading {
public int test(){
System.out.println("test1");
return 1;
}
public void test(int a){
System.out.println("test2");
}
//以下两个参数类型顺序不同
public String test(int a,String s){
System.out.println("test3");
return "returntest3";
}
public String test(String s,int a){
System.out.println("test4");
return "returntest4";
}
public static void main(String[] args){
Overloading o = new Overloading();
System.out.println(o.test());
o.test(1);
System.out.println(o.test(1,"test3"));
System.out.println(o.test("test4",1));
}
}