java封装继承例子(java的封装继承和多态)

封装的例子

封装是面向对象编程的重要特性之一,它通过限制其他对象对内部对象的访问,防止不合理的操作,使得对象更加安全可靠。Java中封装的应用非常广泛,我们来看一个简单的例子。

假设我们创建了一个Person类,包含三个属性:姓名、性别和年龄。我们希望能够让外部程序只读取这些属性的值,而不能直接修改它们。为了实现这个目标,我们可以将这三个属性设置为私有属性,然后提供公有的访问方法,让读取和修改都通过这些方法进行。

代码如下:

public class Person {
    private String name;
    private String gender;
    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public int getAge() {
        return age;
    }

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

继承的例子

继承是面向对象编程中常用的一种技术,它可以让一个类继承另一个类的属性和方法,使得代码得到了重用,同时也让继承类更容易扩展。下面我们来看一个继承的例子。

假设我们有一个Animal类,其中包含两个方法:move()和eat(),分别表示动物的移动和进食。我们希望创建一个更具体的类,来表示“狗”这种动物,既能够继承Animal类的方法,又能够添加一些自己的属性和方法。

代码如下:

public class Animal {
    public void move() {
        System.out.println("动物在移动");
    }

    public void eat() {
        System.out.println("动物在进食");
    }
}

public class Dog extends Animal {
    private String breed;

    public String getBreed() {
        return breed;
    }

    public void setBreed(String breed) {
        this.breed = breed;
    }

    public void bark() {
        System.out.println("狗在叫");
    }
}

在这个例子中,我们定义了一个Dog类,它继承了Animal类的方法,同时添加了一个自己的属性breed和方法bark()。这样我们就可以用Dog类来表示狗这种动物,并且调用move()和eat()方法时会自动继承Animal类的代码。

封装继承的联合运用

封装和继承是面向对象编程两个最重要的特性,它们的联合运用可以使代码更加灵活可扩展。下面我们来看一个简单的例子,演示封装和继承的联合运用。

假设我们有一个父类Shape,其中包含一个方法area(),表示计算图形的面积。我们希望创建一个更具体的类,来表示“圆形”这种图形,同时限制参数的范围,使得半径不能为负数。为了达到这个目标,我们可以在Circle类中重载area()方法,并在其中添加一个判断语句,以确保参数不为负数。

代码如下:

public class Shape {
    public double area() {
        System.out.println("计算图形面积");
        return 0;
    }
}

public class Circle extends Shape {
    private double radius;

    public double getRadius() {
        return radius;
    }

    public void setRadius(double radius) {
        if (radius < 0) {
            System.out.println("半径不能为负数");
            return;
        }
        this.radius = radius;
    }

    @Override
    public double area() {
        System.out.println("计算圆形面积");
        return Math.PI * radius * radius;
    }
}

在这个例子中,我们定义了一个Circle类,它继承了Shape类的方法area(),同时添加了一个自己的属性radius和方法setRadius(),在setRadius()方法中对参数进行判断。这样我们就可以用Circle类来表示圆形,并且在计算面积时可以自动调用重载的area()方法。

总之,封装和继承是Java中面向对象编程的两个基本特性,它们的应用非常广泛。在实际开发中,我们需要根据具体的场景选择适当的封装和继承方法,来实现代码的灵活可扩展。

java封装继承例子(java的封装继承和多态)

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/javaqasrjava.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年4月24日 下午9:14
下一篇 2023年4月24日 下午9:15

猜你喜欢