美文网首页
Java继承与访问权限问题总结

Java继承与访问权限问题总结

作者: 手打小黑板 | 来源:发表于2020-02-12 10:38 被阅读0次
    /**
        子类的继承与父类成员构造方法的初始化
        1.父类所有成员变量和方法被子类完全继承
        但访问权限为private的成员变量和方法被禁止,
        可以使用权限为非private的getter与setter操作
        
        2.如果子类存在非private可访问的同名父类成员,那么可以在子类中使用 super.来调用
        
        3.访问权限
        private 自身
        default 自身 包内(包内子类可访问,包外子类不可访问)
        protected 自身 包内 子类
        public 自身 包内 子类 包外
    
        4.构造方法可以使用this()调用自身的其他构造方法 实现对父类构造方法的调用
       例 :B(){this(33,44,55);}  
        5.父类中的this指向实际被创建的对象,如果被创建的是子类对象,那么父类对象中的this便指向实际被创建的子类对象 
        6. 如果父类方法被子类重写,那么在实例化的子类对象中,父类内部调用自身类的方法,那么将调用被子类重写的方法
    */
    class A{
    
    
        private int a1;
        private int a2;
        
    
        A(){}
        A(int a1,int a2){
            this.a1 = a1;
            this.a2 = a2;
        }
    
    
        public void setA1(int a1) {
            this.a1 = a1;
        }
        public void setA2(int a2) {
            this.a2 = a2;
        }
    
        public int getA1() {
            return a1;
        }
    
        public int getA2() {
            return a2;
        }
    
    }
    
    class B extends A {
    
        private int b1;
    
         //如果父类不存在空参构造方法那么子类也不应该存在空参构造方法
        B(){}      
        B(int a1,int a2,int b1){
            super(a1,a2);   //调用父类构造方法
            this.b1 = b1;
        }
    
        public void setB1(int b1) {
            this.b1 = b1;
        }
    
        public int getB1() {
            return b1;
        }
    }
    

    相关文章

      网友评论

          本文标题:Java继承与访问权限问题总结

          本文链接:https://www.haomeiwen.com/subject/cspqfhtx.html