zoukankan      html  css  js  c++  java
  • java继承

    java 继承测试:

    package java继承;
    class Animal {
          void eat() {
            System.out.println("animal : eat");
          }
        }
         
        class Dog extends Animal {
          void eat() {
            System.out.println("dog : eat");
          }
          void eatTest() {
            this.eat();   // this 调用自己的方法
            super.eat();  // super 调用父类方法
          }
        }
         
        public class test {
          public static void main(String[] args) {
            Animal a = new Animal();
            a.eat();
            Dog d = new Dog();
            d.eatTest();
          }
        }

    运行结果

    package java继承;
    class Animal {
          void eat() {
            System.out.println("animal : eat");
          }
        }
         
        class Dog extends Animal {
          void eat() {
            System.out.println("dog : eat");
          }
          void eatTest() {
            this.eat();   // this 调用自己的方法
           // super.eat();  // super 调用父类方法
          }
        }
         
        public class test {
          public static void main(String[] args) {
            Animal a = new Animal();
            a.eat();
            Dog d = new Dog();
            d.eatTest();
          }
        }

    运行结果:

    通过上边代码,可得到:

    ①super关键字:我们可以通过super关键字来实现对父类成员的访问,用来引用当前对象的父类。

    ②this关键字:指向自己的引用。

    继承的特性

    • 子类拥有父类非private的属性,方法。

    • 子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。

    • 子类可以用自己的方式实现父类的方法。

    • //Java的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如A类继承B类,B类继承C类,所以按照关系就是C类是B类的父类,B类是A类的父类。

    不能继承的类:

    关键字final,实例变量也可以被定义为 final,被定义为 final 的变量不能被修改。被声明为 final 类的方法自动地声明为 final,但是实例变量并不是 final。

    思考题:子类的构造方法在运行之前,必须调用父类的构造方法,不能反过来,原因如下:

    构造一个对象,先调用其构造方法,来初始化其成员函数和成员变量。
    子类拥有父的成员变量和成员方法,如果不先调用父类的构造方法,则从父类继承而来的成员变量和成员方法得不到正确的初始化。

        public class test {
          public static void main(String[] args) {
           System.out.println(new test());
          }
        
    }

    运行结果:

  • 相关阅读:
    sharding-jdbc精确分片配置
    sharding-jdbc注意事项
    sharding-jdbc绑定表和公共表
    go 语言解析yaml文件作为配置文件
    go语言添加全局的json配置文件
    go查询数据库讲单数据结果绑定结构体
    sharding-jdbc分库分表节点路由
    增强for循环对遍历的集合进行增删改操作会出现并发修改异常
    go语言数据模型改变响应给前端字段名
    视图
  • 原文地址:https://www.cnblogs.com/zmh-980509/p/9890064.html
Copyright © 2011-2022 走看看