您的位置 首页 java

Java面向对象-重写

向上造型

  • 超类型的引用指向派生类的对象
  • 能点出来什么,看引用的类型
 // 超类   
Aoo o1 = new Aoo();
o1.a = 1;
o1.show();
//派生类
Boo o2 = new Boo();
o2.b = 1;
o2.test();
//超类       派生类     这种就是向上型
Aoo o3 = new Boo(); //向上造型  
o3.a = 1;
o3.show();  

重写 :重写方法

  • 重写与重载的区别

发生在父子类中,方法名相同,参数列表相同

重写方法被调用时,看对象的类型

  • 重写遵循”两同两小一大”原则:

两同:

方法名相同

参数列表相同

两小:

派生类方法的返回值类型小于或等于超类方法的

void 和基本类型时,必须相等

引用类型时,小于或等于

派生类方法抛出的异常小于或等于超类方法的

一大:

派生类方法的访问权限大于或等于超类方法的

  • 重写与重载的区别:

重写(override):发生在父子类中,方法名相同,参数列表相同

重载 (overload):发生在同一类中,方法名相同,参数列表不同

 //超类
public class Person {
     String  name;
    int age;
    String address;

    Person(String name, int age, String address){
        this.name = name;
        this.age = age;
        this.address = address;
    }
    void sayHi(){
        System.out.println("我叫"+name+",年龄"+age+",家住"+address);
    }
}
//派生类 重写 sayHi
public class Student  extends  Person{
    String stuId;

    Student(String name, int age, String address,String stuId){
        super(name,age,address);
        this.stuId =stuId;
    }
    void sayHi(){
        System.out.println("我叫"+name+",年龄"+age+",家住"+address+",学号"+stuId);
    }
}  

学习记录,参考于:blog. csdn .net/jason13579

文章来源:智云一二三科技

文章标题:Java面向对象-重写

文章地址:https://www.zhihuclub.com/186975.shtml

关于作者: 智云科技

热门文章

网站地图