Java中继承注意事项和什么时候使用继承

继承的注意事项:

             1.子类只能继承父类所有非私有的成员(成员方法和成员变量)

                             其实这也体现了继承的另一个弊端:打破了封装性

             2.子类不能继承父类构造方法但可以通过super关键字去访问父类构造方法。

             3.不要为了部分功能而去继承。

注意事项1示例:

package com.company;

class  Father {
    private int num = 10;
    public int num2=20;
    private void method(){
        System.out.println(num);
        System.out.println(num2);
    }
    public void show(){
        System.out.println(num2);
        System.out.println();
    }
}

class Son extends Father{}


public class jicheng_biduan {
    public static void main(String[] args) {
       Son son = new Son();
       son.method();
        son.show();
    }
}

报错信息:

Java中继承注意事项和什么时候使用继承_第1张图片

意思为对象son没有method方法,由此可以得出,子类并不能继承父类的私有方法和变量。

主要事项3示例:不要为了部分功能而继承。

       class  A{

        public void show1();

        public void show2(); 

      }

     class B{

     public void show2(); 

     public void show3();

}

此时我们发现,B类出现了和A类一样的方法show2(),此时我们想到运用继承来体现,把B类改为

    class B extends class A{

      public void show3();

}

但这样其实并不好,因为B继承A就会把A类里面的public方法全部继承,但此时我们可能并不想用show1();方法,但因为继承的特点,我们把A类里面的方法全部继承过来。

 

什么时候用继承?

   采用假设法!

   其实继承体现的是"is a"的关系,举个例子,

   person 

         teacher

         student

         father

             即 teacher is a person ,student is a person , father is a person .

现有A类和B类,如果A类是B类的一种,或者B类是A类的一种,这是我们就可以考虑运用继承。

 

  

你可能感兴趣的:(java)