在笔记本电脑课程中,您必须演示以下内容: 在构造函数AND方法中使用super关键字 重载方法 重写方法
时间: 2024-05-14 14:15:19 浏览: 92
在构造函数和方法中使用super关键字:
在Java中,super关键字用于调用父类的构造函数或方法。当子类构造函数或方法需要继承父类的某些属性或方法时,可以使用super关键字来调用父类相应的构造函数或方法。
示例代码:
```
public class Animal {
String name;
int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public void eat() {
System.out.println(name + " is eating.");
}
}
public class Dog extends Animal {
public Dog(String name, int age) {
super(name, age);
}
@Override
public void eat() {
super.eat();
System.out.println(name + " is eating bones.");
}
}
public class Main {
public static void main(String[] args) {
Dog myDog = new Dog("Buddy", 3);
myDog.eat();
}
}
```
在上面的示例代码中,Dog类继承了Animal类,并通过super关键字调用了父类Animal的构造函数。在子类中重写了父类的eat()方法,并在方法中使用super关键字来调用父类的eat()方法,然后再添加一行输出语句。
重载方法:
在Java中,方法重载是指在同一个类中,有多个方法名相同但参数列表不同的方法。方法的参数列表包括参数的类型、数量和顺序,只要有一个不同,就可以认为是不同的方法。
示例代码:
```
public class Calculator {
public int add(int x, int y) {
return x + y;
}
public double add(double x, double y) {
return x + y;
}
public int add(int x, int y, int z) {
return x + y + z;
}
}
public class Main {
public static void main(String[] args) {
Calculator myCalculator = new Calculator();
System.out.println(myCalculator.add(1, 2));
System.out.println(myCalculator.add(2.5, 3.5));
System.out.println(myCalculator.add(1, 2, 3));
}
}
```
在上面的示例代码中,Calculator类中定义了三个add()方法,分别接受不同数量和类型的参数。在Main类中创建了一个Calculator对象,并分别调用了三个不同的add()方法。
重写方法:
在Java中,方法重写是指在子类中定义一个与父类中同名、同参数列表、同返回类型的方法,并且这个方法的访问修饰符不能比父类的更严格。
示例代码:
```
public class Animal {
public void move() {
System.out.println("Animal is moving.");
}
}
public class Dog extends Animal {
@Override
public void move() {
System.out.println("Dog is running.");
}
}
public class Main {
public static void main(String[] args) {
Animal myAnimal = new Animal();
Dog myDog = new Dog();
myAnimal.move();
myDog.move();
}
}
```
在上面的示例代码中,Animal类中定义了一个move()方法,用于显示动物在移动。Dog类继承了Animal类,并重写了move()方法,用于显示狗在奔跑。在Main类中创建了一个Animal对象和一个Dog对象,并分别调用了它们的move()方法,输出结果分别为“Animal is moving.”和“Dog is running.”。
阅读全文