栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 继承:迈入抽象化的第一站

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 继承:迈入抽象化的第一站

继承
  • 语法
    • 继承:子类 与 父类
      • 局部变量关系
        • 方法重写:
          • Code

类别:学生类
-大学生
-中学生
-小学生

语法
              -关键字:extends(继承)
              -格式:public class 子类名extends 父类名{ }

-关键字:是一门计算机语言的词汇
-标识词: package class interface int(数据类型)
-修饰词:
-访问修饰符权限:public private protected (缺省的)
-static final abstract
-连接词:extends implements

  • 逻辑:if else while for do switch case default return break
  • 特殊类型:void
  • 值:null true false
  • 行为词:new
  • Object 是所有类的隐式父类
继承:子类 与 父类

-子类继承父类的所有东西
-子类以及子类对象可以调用继承到自己身上
-调用的最终执行场景一定是实例(对象)来调用
-我们应该分开思考:写的过程 代码执行时
-属性和方法都可以被继承到
-实现代码复用,多个子类共同的属性和方法都定义在父类中,所有的子类都复用这一份代码
-访问权限的限制:
-访问权限修饰符的作用:
-规定 类、属性、方法 在项目不同域之间的调用权限
-域:不同的文件 不同的文件夹 不同的类
-类的成员之间的范围也就是代码块的范围
-public——在整个项目中都有(scr lib)
-private——只在整个类的{ }中存在
-protected——在同包下以及不同包下的子类中都存在
-缺省的——同包下都有
-属性变量:不需要初始化
-参数变量:不需要初始化——调用方法是必须穿入对应类型的数据
-局部变量:必须初始化

局部变量关系

-属性变量:
-创建对象时默认初始化赋值为0
-参数变量:
-调用方法时必须穿入对应类型的数据
-局部变量:
-没有机会去修改或者重新赋值

方法重写:

-子类之间大致相同,各自有着各自的特点
-子类可以在自己类中定义自己这一类的属性和方法
-子类之间的行为名必须一致,行为可以不一致
-在父类中把行为定义的抽象一些
-子类可以重写父类的方法然后继续扩展
**语法 **
-子类重写父类的方法,一般要求出方法体之外,都要与父类一直
-最好使用@Override检查重写的方法是否正确
-子类及子类对象会优先调用重写之后的方法
-子类、孙子类 向下时一直继承的,方法全部继承自己上一级的父类
优点
-代码逻辑 差异 结构 可以体验出来
-代码复用

Code

-创建一个父类Student,写下其属性、打印信息的方法、父类read方法,打印输出(可以在同一个类下面写很多个类,⚠️:只有主类可以加public,非主类不得➕public)

public class Student {
    String name;
    private String pass;
    protected int adr;
    int id;
    public void printInfo(){
        System.out.println("姓名:"+name);
        System.out.println("密码:"+pass);
        System.out.println("地址:"+adr);
        System.out.println("ID:"+id);
    }
    public void read() {
        System.out.println("父类:读书了!");
    }
}

-子类UNStudent继承父类Student,子类调用父类的read方法,重写父类方法

class UNStudent extends Student {
    public void read(){
        super.read();
        System.out.println("大学生:考试成绩!");
    }
}

-子类MidStudent继承它的上一级父类UNStudent,在这里继承的是他的上一级父类,在子类中也可以加上它自己的方法

class MidStudent extends UNStudent{
    public void read(){
        super.read();
        System.out.println("中学生:考试成绩!");
    }
    public void Text(){
        System.out.println("考试");
    }

}

-再创建一个类,主方法中分别创建父类、子类对象,分别调用其方法

class Manage {
    public static void main(String[] args) {
        Student student=new MidStudent();
        student.printInfo();
        student.read();

        UNStudent unStudent=new MidStudent();
        unStudent.printInfo();
        unStudent.read();

        MidStudent midStudent=new MidStudent();
        midStudent.printInfo();
        midStudent.read();
        midStudent.Text();
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/439633.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号