Apex - Objekte

Eine Instanz der Klasse heißt Object. In Bezug auf Salesforce kann das Objekt von Klasse sein oder Sie können auch ein Objekt von sObject erstellen.

Objekterstellung aus Klasse

Sie können ein Klassenobjekt erstellen, wie Sie es möglicherweise in Java oder einer anderen objektorientierten Programmiersprache getan haben.

Es folgt eine Beispielklasse namens 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);
   }
}

Dies ist eine Instanzklasse, dh um die Variablen oder Methoden dieser Klasse aufzurufen oder darauf zuzugreifen, müssen Sie eine Instanz dieser Klasse erstellen und können dann alle Operationen ausführen.

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

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

sObjekterstellung

sObjects sind die Objekte von Salesforce, in denen Sie die Daten speichern. Beispielsweise sind Konto, Kontakt usw. benutzerdefinierte Objekte. Sie können Objektinstanzen dieser sObjects erstellen.

Das folgende Beispiel zeigt die sObject-Initialisierung und zeigt, wie Sie mithilfe der Punktnotation auf das Feld dieses bestimmten Objekts zugreifen und die Werte den Feldern zuweisen können.

// 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);

Statische Initialisierung

Statische Methoden und Variablen werden beim Laden einer Klasse nur einmal initialisiert. Statische Variablen werden nicht als Teil des Ansichtsstatus für eine Visualforce-Seite übertragen.

Das Folgende ist ein Beispiel für eine statische Methode sowie eine statische Variable.

// 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

Statische Variablen werden beim Laden der Klasse nur einmal instanziiert, und dieses Phänomen kann verwendet werden, um die Triggerrekursion zu vermeiden. Der Wert der statischen Variablen ist im selben Ausführungskontext gleich, und jede Klasse, jeder Trigger oder jeder Code, der ausgeführt wird, kann darauf verweisen und die Rekursion verhindern.