zoukankan      html  css  js  c++  java
  • 继承

    继承的概念

    继承是一种构建新类的方式,他是基于已有的类的定义为基础,构建新的类,已有的类称为父类,新构建的类称为子类,子类能调用父类的非private修饰的成员,同时还可以自己添加一些新的成员,扩充父类,甚至重写父类已有的方法,更其表现符合子类的特征。让子类的表现更独特,更专业。

    继承的写法

    Java规定,一个类后面紧跟 extends关键字,再加一个类的名字,则表示新建的类继承自extends 后面的那个类。代码如下:

    public class Student {
        private String name;
        private String age;
    
        private String handleName(String name){
           return "I'm " + name;
        }
    
        private String handleAge(String age) {
            return age + " 岁";
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = handleName(name);
        }
    
        public String getAge() {
            return age;
        }
    
        public void setAge(String age) {
            this.age = handleAge(age);
        }
    }

    现在我们新建一个类去继承自他,这个类我们就叫Boys,其代码如下:

    public class Boys extends Student {
        @Override
        public void setName(String name) {
            super.setName(name);
        }
    
        @Override
        public String getAge() {
            return super.getAge();
        }
    
        @Override
        public String getName() {
            return super.getName();
        }
    
        @Override
        public void setAge(String age) {
            super.setAge(age);
        }
    }

    在上面代码中,我们可以看到很多相似的方法,这些方法的方法签名,参数,返回类型都是与父类的方法是一致,Java允许我们定义和父类一致的方法,以便我们在这个方法中写入新的代码。上面方法中,我们会看见一个新的关键字super,这个关键字与this相似,不过super表明调用方法的对象是父类的对象,那这段自动生成的代码的意思就是如果我们不添加新的内容,那么当我们子类调用这些方法的时候,执行的是父类的方法。同时我们在这个方法上面看见一个注解 @Override这表明这个方法是覆盖父类的方法,而不是方法重载,下面我具体说一下什么是方法重载,以及这个注解存在的必要。

  • 相关阅读:
    yii2 模型查询使用计算值
    git回滚操作
    yii2 模型搜索时 or 条件查询
    从一台服务器发送文件到另一台服务器
    学习swoft的第三天_AOP切面
    C面试题汇总(转)
    秒杀多线程:多线程笔试面试题汇总(转)
    链表的常见操作(转)
    YAFFS跟踪
    libusb开发指南
  • 原文地址:https://www.cnblogs.com/qq1312583369/p/10921259.html
Copyright © 2011-2022 走看看