java入门-成员变量的隐藏与方法重写(super)

来源:互联网 发布:php调用python 编辑:程序博客网 时间:2024/05/22 09:00

只要子类中声明的成员变量和父类中的成员变量同名,子类就隐藏了继承的成员变量,

例子:

class People {//父类

      public double x;

      public void setX(double x){

              this.x=x;

       }

       public double getDoubleX(){

             reutrn x;

       }

}

class Studnet extends People{

      int x;//重新声明X

      pulic int getX(){

       // x=20.56;double类型的x是被int

//的变量隐藏了

        x=23;

      return x;

       }

}


方法重写:在子类中定义一个方法,这个方法的类型和父类的方法的类型一致;

                     目的:子类可以把父类的状态和行为改变为自身的状态和行为

                  重写后:若父类的方法f被子类继承,子类有权重写f,重写了父类的方法f,就隐藏了继承的方法f则子类对象调用的方法f是调用重写的方法f,

                                      则子类想调用

想调用被隐藏的方法,必须使用关键字super

              使用关键字调用父类的构造方法

                           子类不继承父类的构造方法,若想使用父类的构造方法,在子类的构造方法中使用super关键字(必须在子类构造方法中的头一条语句  ) 

public class Student{

       int number;

        String name;

        Student(){

         }

        Student(int numbet,String name){//构造函数

              this.number=number;

              this.name=name;

        }

       public int getNumber(){

               return number;

        }

       public String getName(){

              return isMarriage;

         }

}

public class UniverStudent extends Student{

      boolean isMarriage;

      UniverStudent(int number,String name,boolean b){//构造函数

                super(number,name);//调用父类的构造函数

       }

       public boolean getIsMarriage(){

              return isMarriage;

       }

}

 

可以是用super操纵被隐藏的成员变量和方法

       用处:方问被子类隐藏的成员变量和方法

       形式:super.play(),super.x 其中play()与x是类中的方法和成员变量

0 0
原创粉丝点击