Apex - Объекты

Экземпляр класса называется Object. С точки зрения 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);
   }
}

Это класс экземпляра, т.е. для вызова или доступа к переменным или методам этого класса вы должны создать экземпляр этого класса, а затем вы сможете выполнять все операции.

// Object Creation
// Creating an object of class
MyClass objClass = new MyClass();

// Calling Class method using Class instance
objClass.myMethod(100);

sОбъект создание

sObjects - это объекты Salesforce, в которых вы храните данные. Например, «Учетная запись», «Контакт» и т. Д. Являются настраиваемыми объектами. Вы можете создавать экземпляры объектов этих sObject.

Ниже приведен пример инициализации sObject и показано, как можно получить доступ к полю этого конкретного объекта с помощью точечной записи и присвоить значения полям.

// Execute the below code in Developer console by simply pasting it
// Standard Object Initialization for 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);

// Custom sObject initialization and assignment of values to field
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);
   }
}

// Calling the Class Method using Class Name and not using the instance object
MyStaticClass.myMethod(100);

Static Variable Use

Статические переменные будут созданы только один раз при загрузке класса, и это явление можно использовать, чтобы избежать рекурсии триггера. Значение статической переменной будет одинаковым в одном контексте выполнения, и любой выполняемый класс, триггер или код может ссылаться на него и предотвращать рекурсию.