java的继承特性和方法重写
Java的继承特性是一种面向对象编程的重要概念,它允许我们基于已有的类创建新的类,并且保留了已有的类的一些特性。这是通过使用"继承"这个关键词来实现的,新创建的类称为子类(subclass),已有的类称为父类(superclass)。
在java中一个子类可以有多个父类也叫多继承,子类会继承父类里的属性,当然父类也可以通过Private来对继承的属性进行控制
方法继承
继承通过使用extends关键字来继承父类,演示代码如下
先定义一个学生类
import java.util.Scanner;public class student {public String name;public int course;public int age;public void behavior(){System.out.println("I am student");}
}
在定义一个继承类
import java.security.PrivateKey;
import java.util.Scanner;class Inherit extends student{public void behavior() {System.out.println("我是一个学生");}
}
这样这个继承类就继承了student的属性
这样我们看不出来 我们新定义一个类,对他进行调用
import java.util.*;
public class Xl {public static void main(String[] args) {Inherit stu1 =new Inherit();stu1.name = "张三";stu1.age = 18;System.out.println("姓名:" + stu1.name + " 年龄:" + stu1.age);}
}
可以看到我们继承类中没有名字年龄的属性因为继承的关系也存在了这些属性
重写
Java中的方法重写(Method Overriding)是指在子类中重新定义(或覆盖)其父类中的同名方法,使其具有不同的实现。当子类对象调用该方法时,将执行子类中的方法实现,而不是父类中的实现。
方法重写的前提是子类与父类之间存在继承关系,且子类中的方法与父类中的方法具有相同的方法名、参数列表和返回类型。在子类中定义与父类同名的方法时,需要在方法前面使用@Override注解,这样可以帮助编译器检查是否正确地重写了父类中的方法。
使用方法重写可以在不同的子类中实现相同的行为,但是具体的实现方式可以根据子类的需求进行定制。方法重写是面向对象编程中实现多态性的一个重要手段。
接下来用代码进行演示 还是刚才那个继承代码我们在里面是定义了一个behavior()成员方法的但是父类也有这个方法这个方法就不会被继承会进行重写输入为子类的成员方法
调用一下该方法
import java.util.*;
public class Xl {public static void main(String[] args) {Inherit stu1 =new Inherit();stu1.behavior();}
}
我们可以看到输出的是子类的成员方法
这就是继承与方法重写