微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在构造函数中设置最终值

如何解决在构造函数中设置最终值

我有以下问题。我有两个类 - 一个是基类,pther 继承它。所以在父类中是一个抽象类,它包含三个字段 - 字符串名称、字符串地址和整数年龄。但是在我的任务中,它说年龄的值必须认设置为 25 岁。我的问题是 - 如何在继承类的构造函数中借助继承方法 setAge() 实现这个值? 我的抽象构造函数看起来像这样:

public Student(String name,String adress,int age){
    this.setName(name);
    this.setAdress(adress);
    this.setAge(age);
}

和二传手:

public void setAge(int age){
    this.age = age;
}

如何使用认值在继承的类中实现?

解决方法

如果超类构造函数在其构造函数中接受三个参数,而您的子类的构造函数只有两个参数,则可以调用 super 将两个参数加上第三个默认值传递给超类的构造函数.

public abstract class Person
{
    // Constructor
    public Person() ( String name,String address,int age ) 
    { …

和子类。

public abstract class Student
{
    // Constructor
    public Person() ( String name,String address ) 
    { 
        super( name,address,25 ) ;  // Default age of 25 for new `Student` objects.
        …

这是一个愚蠢的例子,因为在实际工作中不会发生默认一个人的年龄。但所展示的概念是合理的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。