📜  在面向对象编程中用于描述对象的三个术语是属性、行为和: (1)

📅  最后修改于: 2023-12-03 14:51:34.305000             🧑  作者: Mango

在面向对象编程中用于描述对象的三个术语是属性、行为和:

在面向对象编程中,我们常常需要描述对象的特征和行为。这里的“特征”可以理解为对象的属性,而“行为”可以理解为对象的操作或方法。因此,我们在使用面向对象编程的时候,经常会提到对象的属性、行为和另外一个重要的概念——类。

属性

属性是指对象的状态或特征,例如一个人的年龄、身高、姓名、性别等等。在面向对象编程中,属性通常是由私有变量或公共变量实现的。一个私有属性只能在对象内部被访问,而公共属性则可以被其他对象访问。例如:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.__age = age # 私有属性,只能在类内部被访问

    def get_age(self):
        return self.__age


p = Person("Linda", 18)
print(p.name)   # Linda
print(p.get_age())  # 18

在这个例子中,name是一个公共属性,而__age是一个私有属性,只能通过get_age()方法来访问。使用属性可以让我们更好地封装对象的数据,避免出现不必要的错误和安全问题。

行为

行为是指对象的操作或方法,例如一个人可以吃饭、睡觉、走路等等。在面向对象编程中,行为通常是由方法实现的。一个方法可以接受参数并返回值,例如:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_hello(self):
        print("Hello, my name is %s, and I am %d years old." % (self.name, self.age))


p = Person("Linda", 18)
p.say_hello()    # Hello, my name is Linda, and I am 18 years old.

在这个例子中,say_hello()方法可以让Person对象向外界展示自己的信息。方法也可以接受参数和返回值,例如:

class Calculator:
    def add(self, x, y):
        return x + y

    def subtract(self, x, y):
        return x - y


c = Calculator()
print(c.add(1, 2))   # 3
print(c.subtract(3, 2))    # 1

在这个例子中,add()subtract()方法接受两个参数并返回一个值。使用方法可以让我们更好地组织代码,避免出现重复代码和不必要的复杂度。

类是面向对象编程中的另一个重要概念,它代表了对象的模板或蓝图。类中定义了对象的属性和行为,而实例化则是将类的模板转化为真正的对象。例如:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_hello(self):
        print("Hello, my name is %s, and I am %d years old." % (self.name, self.age))


p1 = Person("Linda", 18)
p2 = Person("Tom", 20)

p1.say_hello()  # Hello, my name is Linda, and I am 18 years old.
p2.say_hello()  # Hello, my name is Tom, and I am 20 years old.

在这个例子中,Person就是一个类,它包含了两个对象p1p2,它们具有共同的属性和行为。使用类可以让我们更好地组织对象的结构,避免出现重复的代码和不必要的复杂度。