Экземпляр класса называется 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);
создание объекта
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);
Использование статических переменных
Статические переменные будут создаваться только один раз, когда класс загружен, и это явление можно использовать, чтобы избежать рекурсии триггера. Значение статической переменной будет одинаковым в том же контексте выполнения, и любой выполняемый класс, триггер или код могут ссылаться на него и предотвращать рекурсию.