`
Ai臣子
  • 浏览: 4966 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

继承与方法重写

阅读更多
提纲:1.继承的语法格式
      2.方法重写
      3.自动转型
     

1.继承的语法格式:
  1.1继承的关键字:extends

格式:
public class 类名(子类,超类,派生类) extends 类名(父类,基类) {

}
  1.2子类继承父类属性和方法的情况
    a.子类和父类在同一个包下,能调用的方法和属性:
只有私有的属性和方法不能在子类中和子类的对象调用。
    b.子类和父类不同包,能调用的属性和方法:
子类中:  公有的,受保护的属性和方法
子类的对象:公有的属性和方法
  
packge stu;   
public class Student {   
  
    //定义两个属性   
    public String name;   
    private int score;   
       
    /**  
     * 构造方法  
     */  
    public Student(){   
        this("王五",5)       
    /**  
     * 构造方法   给属性赋值初始值  
         */  
    public Student(String name,int score){   
        //赋值   
        this.name = name;   
        this.score = score;   
    }   
    public void setName(String name){   
        this.name = name;   
    }   
    public String getName(){   
        return name;   
    }   
    public void setScore(int score){   
        this.score = score;   
    }   
    public int getScore(){   
        return score;   
    }   
    /**  
     * 定义学习方法  
     */  
    public void study(){   
        score++;   
        System.out.println(name+"学习中,学分是"+score);   
    }   
}  

    
        其子类:
   
/**  
 * 定义一个UNStudent类,该类继承自Student  
 */  
public class UNStudent extends Student {   
       
    public void test(){   
        System.out.println("UNStudent Test");   
    }   
} 



2.方法重写:(注意区分它与方法重载)
   2.1条件:
1.必须要存在继承关系
2.返回值数据类型 ,方法名,参数个数,参数类型,参数顺序必须要和父类的完全一致  。
3.子类重写方法的访问修饰符可以大于或者等于父类方法的访问修饰符。
   2.2怎么调用重写的方法:
优先调用子类的方法,如果子类没有,则调用父类的.



3.自动转型:
   3.1条件:要实现自动转型就必须要存在继承关系。
   3.2格式一:
父类名 对象名 = new 子类构造方法();
Student stu = new UNStudent();

 

      格式二:
public 返回值数据类型  方法名(父类名 对象名){
对象名.调用父类中定义过的方法();
}

父类名 对象名A = new 子类构造方法();
子类名 对象名B = new 子类构造方法();

方法名(对象名A);
方法名(对象名B);

分享到:
评论

相关推荐

    Java 继承和方法重写

    4. **方法覆盖与方法隐藏**: - **方法覆盖**:子类中定义了与父类同名、同参数列表的方法,属于重写。 - **方法隐藏**:子类中定义了与父类同名但参数列表不同的方法,不属于重写,只是在子类中隐藏了父类的方法...

    对python中类的继承与方法重写介绍

    方法重写(Override)是指子类定义与父类同名的方法,目的是为了改变或扩展父类原有的行为。当在子类中调用这个同名方法时,会优先执行子类的方法,而不是父类的。 例如,`Xiaotq` 类重写了 `Dog` 类的 `bark` 方法...

    JAVA中的方法重写与方法重载区别

    JAVA中的方法重写与方法重载区别 JAVA 中的方法重写和方法重载是两个重要的概念,在面向对象程序设计语言中尤为重要。方法重写和方法重载都是多态性的体现,但它们之间有着本质的区别。 方法重写(Override)是指...

    java 重载,重写以及继承,多态的区别

    重写的方法必须与父类的方法同名,同返回值,同形参个数和类型。重写的目的是为了提供更加具体的实现。 例如,在上面的例子中,`Triangle` 类中的 `getSides()` 方法是对 `Shape` 类中的 `getSides()` 方法的重写。...

    方法重载和方法重写

    1. **范围**:方法重载发生在同一类内部,而方法重写发生在继承的上下文中,即子类对父类方法的改变。 2. **参数列表**:重载必须有不同参数列表,而重写要求参数列表完全一致。 3. **返回类型**:重载不关注返回...

    静态(static)方法的继承和重写

    静态方法的继承和重写是面向对象编程中的重要概念,对于理解和设计复杂的软件系统至关重要。 首先,我们来谈谈静态方法的继承。当一个子类继承了父类,它会自动继承父类中所有的公共和保护静态成员,包括静态方法。...

    python继承类重写方法.docx

    Python中的继承和方法重写是面向对象编程的重要组成部分,它提供了代码复用和扩展的灵活性。在Python中,一个类可以派生自另一个类,从而继承其属性和方法。这样,子类就可以在保留父类功能的基础上添加或修改功能。...

    继承与多态,重载和重写

    重写只发生在继承关系中,子类方法必须声明为`@Override`(在Java中),以确保该方法确实覆盖了父类的相应方法。在运行时,如果对象是子类类型,即使引用的是父类类型,也会调用子类中重写的方法,这就是多态性的一...

    Java面试题及答案.

    1. 继承与方法重写 继承是面向对象编程的一个基本特性,它允许创建一个类的子类(派生类),子类继承父类的所有属性和方法。子类可以重写父类的方法,实现特定的行为。根据Java语言规范,子类重写的方法不能降低父类...

    C#继承与重写实现工资的预算

    本文将详细解析一个具体的案例:“C#继承与重写实现工资的预算”,通过分析提供的代码片段,我们将深入了解如何利用继承和重写来构建灵活的工资预算系统。 ### 继承的概念 继承是一种机制,允许创建一个新的类...

    Java继承方法重写实现原理及解析

    继承方法重写是指子类继承父类的方法,并对其进行修改或扩展,使得子类具有与父类不同的行为。这种机制允许子类继承父类的结构,并增加或修改父类的方法。 二、继承方法重写的规则 继承方法重写需要满足以下规则:...

    java复习资料

    在上述题目中,我们看到的知识点主要集中在多线程、继承与方法重写、静态变量与常量、字符串处理以及静态方法的使用。 1. 多线程:题目中的第一个例子展示了Java中的线程使用。`Thread t = new Thread(new TestTwo...

    C#重写重载与多态

    在C#编程语言中,重写、重载和多态是面向对象...重写允许子类定制继承自基类的方法,重载让我们可以创建多个同名但参数不同的方法,而多态则让我们可以通过父类引用调用子类的特定方法,实现更高效、更灵活的代码设计。

    java上机java上机.doc

    Java 上机实验主要涵盖了几方面的知识点,包括递归算法、循环结构、面向对象编程以及类的继承与方法重写。以下是对这些知识点的详细说明: 1. **递归算法**: 实验指导3-3中的`MonkeyEatPeach.java`展示了递归的...

    Java面试常见问题

    1. **继承与方法重写** - 题目:在类A的子类中可以使用哪个选项? - 分析:在Java中,子类可以重写父类的非私有方法。因此,选项A(public int method1(int a, int b))是合法的,因为它保持了方法签名的一致性。...

    python继承类重写方法(1).docx

    Python中的继承和方法重写是面向对象编程的重要组成部分,它提供了代码复用和扩展的灵活性。在Python中,一个类可以派生自另一个类,从而继承其属性和方法。这使得我们可以在不改变原有类的基础上扩展功能或定制行为...

    day004 面向对象3-继承、抽象和方法的重写.doc

    面向对象编程之继承、抽象和方法重写 面向对象编程是一种编程范式,强调模块化、抽象化和继承性。在 Java 中,继承、抽象和方法重写是面向对象编程的三大要素。本文将对这三者进行详细的解释和说明。 一、继承...

    ext继承重写

    EXT JS采用面向对象的编程方式,允许开发者通过继承机制来扩展类的功能,同时通过重写方法来定制或优化原有功能。 EXT JS中的“extend”关键字是实现继承的关键。当你创建一个新的类并声明它`extend`另一个类时,新...

Global site tag (gtag.js) - Google Analytics