Quels sont les objets compagnons à Scala?
Un objet complémentaire et la classe sont dans le même fichier source avec le même nom. Les objets compagnons sont des objets qui ont un nom similaire à la classe à laquelle ils appartiennent. Le même objet et la même combinaison de noms de classe sont très puissants, nous pouvons accéder à la fois à des méthodes privées et des champs de la classe.
Syntaxe d'objets compagnon scala
La syntaxe générale de l'objet compagnon dans Scala regarde de cette manière:
Class Class_nameIci, "class_name" est le nom de la classe et l'objet_name est le nom de l'objet de classe. La classe et le nom de l'objet doivent être les mêmes pour devenir des compagnons les uns aux autres. Cela signifie que nous pouvons utiliser les champs et les méthodes des instances de la classe.
Comment utiliser les objets compagnon Scala dans Ubuntu 20.04?
Pour comprendre l'utilisation des objets compagnon à Scala, vous devriez jeter un œil aux exemples suivants ci-dessous:
Exemple 1: Utilisation de la classe compagnon Scala et de la méthode d'objet
Nous pouvons créer un objet compagnon en gardant le nom de l'objet le même que le nom de classe. Ensuite, nous avons considéré la classe et le compagnon d'objet l'un à l'autre. Ci-dessous, nous avons créé un objet compagnon.
Dans le code ci-dessus, nous avons une classe comme exemple1. La classe a des variables STR1 et STR2 initialisées avec la valeur de chaîne. Il existe une méthode «MyExample» qui définit la classe qui imprime les valeurs «STR1» et «STR2». Dans l'objet compagnon, nous accédons à la méthode de la classe pertinente.
Vous pouvez voir dans la sortie ci-dessous; Nous pouvons accéder au membre de la classe Companion avec le «nouveau» mot-clé dans l'objet compagnon.
Exemple 2: Utilisation de la méthode Appliquer pour l'objet Companion Scala
Nous pouvons créer une instance d'une classe via la méthode d'application. Ayons une implémentation de méthode d'application ci-dessous.
Dans le code ci-dessus, nous avons déclaré une classe nommée «fruits» et créé un objet de la classe. L'objet de classe est également nommé «fruits». En gardant leur nom, le même qu'ils sont considérés comme des objets compagnons. Le fruit de la classe a été défini avec une variable «x». La variable a une chaîne vide. Ensuite, nous avons un objet complémentaire de fruits de classe d'accompagnement. Dans l'objet compagnon, nous avons utilisé la méthode d'application qui prend l'argument d'un membre de la classe complémentaire. Ensuite, nous avons créé une variable «y» dans la méthode d'application. La variable «Y» initialise une instance d'un objet avec le mot-clé «nouveau». En utilisant la méthode d'application, nous pouvons appeler directement l'objet à partir de la classe.
Nous utilisons le mode Paste pour la méthode d'application. Après avoir quitté un mode de pâte, nous pouvons appeler directement le membre de la classe. Nous avons écrit un code de correspondance de modèle dans Scala et la sortie est indiquée ci-dessous.
Exemple 3: Utilisation de la méthode Appliquer pour créer plusieurs constructeurs
En utilisant la méthode d'application, nous pouvons passer plus d'un argument. Nous pouvons avoir une méthode d'application dans la classe compagnon plus d'un qui fournira plusieurs constructeurs. L'exemple est d'avoir deux constructeurs dans la méthode d'application et deux méthodes d'application dans l'objet compagnon.
Dans le code ci-dessus, nous avons créé une classe de compagnie comme «langue» et défini deux variables «L1» et «L2». Ensuite, nous avons un objet complémentaire du nom «langue» comme le nom de classe complémentaire. Dans l'objet compagnon, nous avons utilisé deux méthodes d'application. La première est une seule valeur passée et l'autre méthode d'application prend deux arguments en tant que constructeur. La méthode d'application a la variable «L3» qui a un «nouveau» mot-clé avec l'objet. Nous pouvons générer une nouvelle instance d'un objet avec l'utilisation du «nouveau» mot-clé. Le «L3» prend les valeurs de «L1» et «L2» dans le code.
La sortie auxquelles nous pouvons accéder via le mode Paste à mesure que l'implémentation est affichée après le mode de sortie. Nous pouvons appeler l'objet en utilisant la méthode d'application.
Exemple 4: Utilisation de la méthode non appliquée pour les objets compagnon
Maintenant, nous pouvons également extraire le champ d'un objet en utilisant la méthode non appliquée dans l'objet compagnon.
Dans le code ci-dessus, nous avons d'abord fait une classe de compagnie qui est nommée «couleur». La classe compagnon «couleur» a des variables en tant que membres de la classe. La variable est représentée comme «C1» et «C2». Ces champs variables sont accessibles par l'objet compagnon en tant que constructeur. Ensuite, nous avons créé un objet compagnon et défini la méthode d'application dedans. La méthode d'application crée un constructeur en passant des arguments de champs de classe complémentaire. Dans la méthode Appliquer, nous avons une variable «C3» qui utilise un nouveau mot-clé avec la couleur de l'objet. Les valeurs de «C1» et «C2» sont passées à «C3». En fin de compte, nous devons utiliser la méthode non appropriée qui a «C3» comme argument et renvoie la valeur de «C1» et «C2».
Après avoir quitté le mode Paste, nous avons extrait les champs d'un «C3». La sortie de la méthode non appropriée est affichée à l'écran.
Conclusion
Le guide vise à vous démontrer les avantages d'avoir un objet compagnon. Pour devenir un compagnon de la classe et de l'objet, le nom doit être le même et sont conservés dans le même fichier source. Ensuite, nous avons discuté de la méthode Appliquer avec l'implémentation du code. Nous pouvons utiliser plus d'une méthode d'application dans un objet compagnon et créer divers constructeurs dans la méthode d'application. Nous avons également discuté de la méthode peu approximative pour extraire les champs de la classe. L'exemple d'application de la méthode est via le mode Paste dans Ubuntu 20.04 Terminal. Vous pouvez utiliser le mode Paste en donnant la commande «scala» sur le terminal et en sortant également du mode Paste en appuyant sur «Ctrl + D».