Apex - 对象

类的实例称为对象。 就 Salesforce 而言,对象可以是类,也可以创建 sObject 的对象。

从类创建对象

您可以创建类的对象,就像在 Java 或其他面向对象的编程语言中所做的那样。

下面是一个名为 MyClass 的示例类 −

// Sample Class Example
public class MyClass {
   Integer myInteger = 10;
   
   public void myMethod (Integer multiplier) {
      Integer multiplicationResult;
      multiplicationResult = multiplier*myInteger;
      System.debug('Multiplication is '+multiplicationResult);
   }
}

这是一个实例类,即要调用或访问该类的变量或方法,必须创建该类的实例,然后才能执行所有操作。

// 对象创建
// 创建类的对象
MyClass objClass = new MyClass();

// 使用类实例调用类方法
objClass.myMethod(100);

s对象创建

sObjects 是您存储数据的 Salesforce 对象。 例如,帐户、联系人等都是自定义对象。 您可以创建这些 sObject 的对象实例。

以下是 sObject 初始化的示例,展示了如何使用点表示法访问该特定对象的字段并将值分配给字段。

// 只需粘贴即可在开发者控制台中执行以下代码
// Account sObject 的标准对象初始化
Account objAccount = new Account(); // Object initialization
objAccount.Name = 'Testr Account'; // Assigning the value to field Name of Account
objAccount.Description = 'Test Account';
insert objAccount; // Creating record using DML
System.debug('Records Has been created '+objAccount);

// 自定义 sObject 初始化并将值分配给字段
APEX_Customer_c objCustomer = new APEX_Customer_c ();
objCustomer.Name = 'ABC Customer';
objCustomer.APEX_Customer_Decscription_c = 'Test Description';
insert objCustomer;
System.debug('Records Has been created '+objCustomer);

静态初始化

静态方法和变量仅在类加载时初始化一次。 静态变量不会作为 Visualforce 页面视图状态的一部分进行传输。

以下是静态方法和静态变量的示例。

// Sample Class Example with Static Method
public class MyStaticClass {
   Static Integer myInteger = 10;
   
   public static void myMethod (Integer multiplier) {
      Integer multiplicationResult;
      multiplicationResult = multiplier * myInteger;
      System.debug('Multiplication is '+multiplicationResult);
   }
}

// 使用类名而不是实例对象调用类方法
MyStaticClass.myMethod(100);

静态变量的使用

静态变量只会在类加载时实例化一次,这种现象可以用来避免触发递归。 静态变量值在同一执行上下文中将是相同的,并且正在执行的任何类、触发器或代码都可以引用它并防止递归。