Java继承是Java学习中相当重要的一个部分,也是Java的核心知识,我们需要java,继承的相关知识是一定要学的,那java中继承的好处是什么?下面来我们就来给大家讲解一下。
Java中的继承与生活中的继承还是有区别的,在程序中继承以后,你的父类和你的子类同样的也具有某一成员变量和某些方法,谁继承了父类谁就是这个父类的子类,他们之间也就存在中某种连带关系。
我们在编程的时候常常遇到大量的代码需要重复的情况,导致我们的代码比较臃肿,开发效率也大大降低,所以Java继承的作用就体现出来了。定义一个类做为父类,将一些共有的属性和方法定义在这个类中,当某一个类需要使用到这些方法和属性的时候,就可以直接通过extends关键字就可以直接调用父类中的成员变量和方法,方便快捷。
Java继承的使用方法
1、定义一个继承的语法:
修饰符 class 子类类名 extends 父类名{
//类定义部分
}
这就是一个继承的一个语法模式,记住关键字extends。
2、父类(超类):
父类我们不做任何要求和限制,只要是将一些公共使用到的一些变量、方法、构造器等等一系列的都可以定义在一个类里面。只有这个类被继承以后,他的角色马上就从普通类转变为一个父类。
3、子类(基类或派生类):
子类的定义也就是说当你使用继承关键字继承某一个类的时候,你就自动的成为了这个类的子类,你和这个类就有一种继承的关系在里面。父类里面定义的所有变量、方法、构造器你都可以直接调用使用,当然得排除使用private修饰的变量和方法。
4、重写覆盖:重写这个概念很重要,一般是子类重写父类中的方法,为什么要重写父类中的方法?是因为父类中定义的一些方法不能够满足子类里面的需求,在父类定义的方法上再添加上子类中的另外的东西,使得子类里面更完善,具体看下面的实例一。所以说,子类是对父类的一个扩展。
在重写的语法中,为了精简代码是重复率,我们直接使用“super.父类中的方法名”的方式来实现对父类方法的重写覆盖,就没有必要再再一次的编写父类中的方法。
5、调用构造器:
实例一(实现简单的一个继承关系)
//定义一个父类(超累):3个成员变量 class User { String name; int age; public void display() { System.out.println("姓名:" + name); System.out.println("年龄:" + age); } } //定义一个子类(派生类):3个成员变量 //1、使用extends关键字完成继承.继承实现了代码的重复利用。 //2、子类是父类的继承类。 //3、父类的private成员子类是不可以继承的。其他的说明符的都可以被继承。 class Student extends User { String password; String gender; //重写父类的方法。覆盖父类的定义的方法。这是因为父类定义的不能够满足子类的需求。 @Override //这个是重写的注解。可以不写, public void display() { //使用super来显示父类中已经定义的成员方法。从而实现代码的重复利用 super.display(); System.out.println("密码:" + password); System.out.println("性别:" + gender); } } //主类, public class Extends01 { public static void main(String[] args) { //创建子类的实例。 Student st = new Student(); //赋值 st.name = "zs"; st.age = 15; st.gender = "男"; st.password = "123456"; //打印输出一下 st.display(); } }
在控制面板中显示:
姓名:zs
年龄:15
密码:123456
java中继承要注意什么?
1、父类也称作超类、基类。子类:派生类等。
3、Java中只有单继承,没有像 C++那样的多继承。多继承会引起混乱,使得继承链 过于复杂,系统难于维护。
3、Java中类没有多继承,接口有多继承。
(视频教程推荐:java视频教程)
4、子类继承父类,可以得到父类的全部属性和方法 (除了父类的构造方法),但不见得可以直接访问(比如,父类私有的属性和方法)。
5、如果定义一个类时,没有调用extends,则它的父类是:java.lang.Object。
java中继承虽然是有好处的,但是也有坏处,就是不支持动态继承。在运行时,子类无法选择不同的父类,最后大家如果想要了解更多java初识知识,敬请关注奇Q工具网。
推荐阅读: