Java:对象东方(POO)编程简介
#初学者 #编程 #java #poo

Orient -Object编程( POO )是流行的编程范式,它使应用程序的奶油 More More Modular 和<强>易于维护。在Java中,POO广泛用于开发桌面应用程序,Web应用程序和移动应用程序。在本文中,我们将回顾Java中东方计划的基本原理,并以示例为例。

封装

封装是对象编程的第一个基本原理。它包括将专有性mèsthodes 组成,称为 class 。属性是 在类上的提取物中,只能由称为访问者( Getters )和Mutateur( seters )完成。这使您可以保护数据并控制其修改。

例如,这是一个简单的类,它使用封装来存储和修改私有(私有)变量“名称”:

public class Person {
    private String name;

    public String getName() {
        return name;
    }

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

礼节“ 名称”被视为私人,这意味着它不能直接附加在班级之外 。为了获得这种礼节,班级派出了两个公共静音。

thode“ getName()”返回礼节的当前值” name ”,而medode” setName() ”采用丁字裤类型的参数,结束礼节的价值“ name ”。

通过封装礼物“ 名称”,并通过提供公共MSE 访问它,该人类班级可以保证 适当性的变化”名称“由受控处理制成。这也有助于类的使用代码,因为程序的其他部分可以通过公共静音与班级进行交互,而不必担心将“名称”礼节存储或修改为“名称” 。

Hâ©Ritage

住房是便便的另一个重要原则。它允许类构成另一个类的专有性和MSE 。康复类称为子类或已故类别,而其命中的类别称为超级级基本类。子类可以添加补充功能或修改超级级的现有特征。

例如,这里是动物超级级 击中动物,并增加了狗的专有人:

public class Animal {
    public void eat() {
        System.out.println("I am eating");
    }
}
public class Dog extends Animal {
    public void bark() {
        System.out.println("Woof! Woof!");
    }
}

动物阶级有公共的“ eat()”,显示一条消息,表明它正在吃东西。类听到其thode eat()”和中添加 a'''''' bark()“ mesode”显示一条消息,表明狗吠叫。

在课堂上动物,类可以使用其“ eat()”才能完成。这允许实现代码的重复促进代码的维护

在此示例中,类是动物物体的一种形式,可以在预期动物物体的任何地方使用。但是,这只狗本身也具有特殊行为(吠叫的事实),可以由thode “ bark()”。

多态性

多态性是一个原则,允许班级以不同的处理方式行事。这意味着对象可以用作实例 他自己的班级或作为他的子类之一的一个实例

例如,考虑类动物及其子类 dog cat 。假设我们有一个名为“ makeound()”的名称,必须为每只动物称呼。在这种情况下,我们可以使用多态性来称任何类型的动物为“ makeound()”,而不知道前进是'狗还是猫。

public class Animal {
    public void makeSound() {
        System.out.println("The animal is making a sound");
    }
}
public class Dog extends Animal {
    public void makeSound() {
        System.out.println("The dog is barking");
    }
}
public class Cat extends Animal {
    public void makeSound() {
        System.out.println("The cat is meowing");
    }
}

动物类具有公共thodily makeound()”,显示一条消息,表明动物会发出噪音。 狗类 cat 动物降低其thode “强度>“在赞助中

多态性允许对象根据其使用上下文具有不同的行为。这有助于使用代码并允许应用 java 模块化

抽象

抽象是对象编程的第四个原理。它包括完成抽象类,其中包含摘要 bodyless ),必须是 by 它的子类。该抽象使得可以完成一组通用的礁石和礼节,这些珊瑚礁和礼节可以由不同的类别使用,同时确保每个子类都意味着这些“适当”。

下面的示例显示了类 dog 如何使用抽象来隐藏其含义的缺陷,这是一个简单的接口:

public abstract class Animal {
    public abstract void makeSound();
}
public class Dog extends Animal {
    public void makeSound() {
        System.out.println("The dog is barking");
    }
}

在此示例中,动物被认为是 abract at 摘要 ()“。该thode对动物类别没有任何含义,但被认为是澄清的,因此所有喜欢动物的类都必须完成

班级在“ Makeound()”中说明了动物级别的。使用抽象,狗类无需为动物类中完成的所有其他网格提供含义。取而代之的是,她可以专注于完成对“ makeound()”的意义的,这是唯一的抽象thode 在动物中完成。 /p>

摘要类的主要特征是不能立即立即,但是必须由e ,这意味着其抽象和/或过载其非抽象MSE。抽象MSE的偏好只是强迫子类对这些螨虫造成影响的手段之一,但这并不是唯一的警报。因此,抽象类可能不包含抽象的meode

抽象允许可以在不同上下文中使用灵活处理的类的已故同级,而不必担心每个子类中空间含义的缺陷。这促进了代码的使用,并可以创建模块化和电力Java应用程序。

作品

构图是爪哇的另一个重要原则。它由通过组合较简单的对象组成。该构图不是其他类别的房屋所有权和MSE,而是将类实例用作另一类的成员作为更复杂的对象。

下面的示例显示了如何使用构图来从“房间”和“门”等简单对象中得出对象“ house”:

public class Door {
    private String color;

    public Door(String color) {
        this.color = color;
    }

    public String getColor() {
        return color;
    }
}
public class Room {
    private Door door;
    private String name;

    public Room(String name, Door door) {
        this.name = name;
        this.door = door;
    }

    public String getName() {
        return name;
    }

    public Door getDoor() {
        return door;
    }
}
public class House {
    private Room[] rooms;

    public House(Room[] rooms) {
        this.rooms = rooms;
    }

    public Room[] getRooms() {
        return rooms;
    }
}

在此示例中,我们有三个类:房间 house 。门班重现了一扇门,并具有“颜色”礼节,可衍生其颜色。房间班重现了房屋的pkeice,并具有衍生其名称的礼节的“名称”,以及一个礼节的“门”,是一个重现Piû门的门对象。

班级 house 再现房屋并具有礼节的“ 房间” 。使用该构图,我们可以通过组合几个房间对象来构建房屋对象,这些房间包含物体门。
**
总之,Java中的**编程或对象
具有许多优势,包括模块化使用的维护灵活性。使用封装,住房,多态性,抽象和组成的原则,冰球手可以相信应用 java java 强大的 volutous