• 子父类继承相关(static)


    例子

    /**
     * 子类可以继承父类中static声明的方法或变量,但不能被重写,不能实现多态
     * 变量是无法形成多态的
     * 当子类定义的成员变量 与父类中定义的成员变量 具有相同名称时,子类中定义的成员变量会覆盖父类的成员变量,而不会继承
     * 当子类的方法与父类的方法 具有相同函数签名(方法名、参数个数与类型),子类将会覆盖父类的方法,而不会继承
     * 
     */
    
    public class ex {
        public static void main(String[] args) {
    
            Sub sub = new Sub();
            System.out.println(sub.str);           //子类非静态变量
            System.out.println(sub.staticStr);    //子类静态变量
            sub.staticMethod();                   //子类静态方法
            sub.method();                         //子类非静态方法
            System.out.println("==================================");
    
            Father f = new Sub();
            System.out.println(f.str);            //父类非静态变量      变量是无法形成多态的
            System.out.println(f.staticStr);      //父类静态变量        变量是无法形成多态的
            f.staticMethod();                     //父类静态方法
            f.method();                          //子类非静态方法       子类覆盖父类方法
            System.out.println("==================================");
    
            Father f2 = new A();
            System.out.println(f2.str);           //父类非静态变量
            System.out.println(f2.staticStr);     //父类静态变量
            f2.method();                          //父类非静态方法
            f2.staticMethod();                   //父类静态方法
        }
    
    }
    
    class Father {
        public String str ="父类非静态变量";
        public static String staticStr = "父类静态变量";
    
        public static void staticMethod(){
            System.out.println("父类静态方法");
        }
    
        public  void method(){
            System.out.println("父类非静态方法");
        }
    
    }
    
    class Sub extends Father{
        public String str ="子类非静态变量";
        public static String staticStr = "子类静态变量";
    
        public static void staticMethod(){
            System.out.println("子类静态方法");
        }
    
        public  void method(){
            System.out.println("子类非静态方法");
        }
    
    
    }
    
    class A extends Father{}
  • 相关阅读:
    JFreeChart(一)
    database link 使用<转>
    Hibernate注解配置N:N关联
    JFreeChart(二)
    struts2中<s:doubleselect/>标签的使用心得<原创>
    JSP引入JFreeChart
    struts2中<s:doubleselect/>标签的使用<转>
    Hibernate实体注解配制
    数据库事务隔离级别<转>
    tnsname.ora 个参数解释
  • 原文地址:https://www.cnblogs.com/zh-xiaoyuan/p/15218386.html
Copyright © 2020-2023  润新知