java复写、向上转型和向下转型

1.return

 代表了返回到主函数去运行,一旦执行了return函数,后面的语句就不在执行。

2.复写(override)

在具有父子关系的两个类当中,父类和子类都有一个相同的函数,而且这两个函数的(参数表,返回值,函数名)都一样,这叫复写。


class Persion{

    int age;

    String  name;

    void intruduce()

     {

      system.out.println("我的年龄"+age+"我的名字"+name);

     }

}

class Student extends Persion{

      String adress;

      void intruduce()

      {

          super.intruducef();

          system.out.println("我的地址”+adress);

       }

}


3.转型

(1)对象的向上转型:将子类的对象复制给父类的引用。

Studnet s=new Student();

Persion p=s;

p、s 是两个引用,但是都指向堆里面的同一块内存。(p所使用的成员和函数都是子类的成员和函数)

一个引用能调用哪些成员变量和函数,取决于这个引用的类型。如果这个对象的那个类没有这个变量,那么就不能引用这个变量。

一个引用调用哪个方法,取决于这个引用指向的对象.

例子:


Student student=new Student();

Persion p=s;

p.name="张三";

p.age=20;

p.adress="河南";//这是错误的因为p没有这个变量,只有name和age


(2)对象的向下转型:

Student s=new Student();

Persion p=s;

Student s1=(Student)p;

而不能直接转型,必须先向上转型,然后再向下转型。

Persion p=new Persion();

Student student=(Student)p;

你可能感兴趣的:(java复写、向上转型和向下转型)