Jason. Cała informatyka w jednym miejscu!

Nadszedł czas rozebrać słowo kluczowe "this" w języku C# na molekuły i przyjrzeć się bliżej w których miejscach możemy na nie natrafić. Ono nie jest przypisane wyłącznie do jednej rzeczy. Chcę uprzedzić, że zaprezentowane tutaj wystąpienia to nie są wszystkie jakie występują w całym "CSharpie". Gdy przejdę do zaawansowanej literatury, wtedy rozwinę materiał.

"THIS" W JĘZYKU C# ZNAJDZIESZ NIE W JEDNYM, A W KILKU MIEJSCACH

"this" nie jest przypisane do jednej sytuacji. Może być wykorzystane w kilku różnych miejscach, a niektóre jego możliwości były rozszerzane w późniejszych wersjach języka C#. Zobaczcie gdzie możecie na nie natrafić.

REFERENCJA DO TEJ SAMEJ KLASY

Ze słowem kluczowym "this" mieliśmy już do czynienia w trakcie opisywania konstruktorów klas. Napisałem, że przydaje się to kiedy dochodzi do kolizji nazw pomiędzy parametrami formalnymi, a danymi składowymi:

private int x, y;

public Point(int x, int y)
{
	this.x = x;
	this.y = y;
}

Kiedy macie taką sytuację i nie chcecie dawać żadnych pokrętnych nazw, warto z tego skorzystać!

INICJALIZATOR

Ten śliczny termin oznaczający wywoływanie jednego konstruktora tej samej klasy z poziomu drugiego konstruktora. Pisząc jeszcze inaczej, chodzi o przeciążanie konstruktorów i wywoływanie ich nawzajem przez siebie, aby ograniczyć nadmiarowość kodu i skorzystać z raz napisanych instrukcji:

public Point(int x, int y)
{
	this.x = x;
	this.y = y;
}

public Point():this(0, 0) {}

Wtedy także wykorzystujemy "this" w języku C#. To sprawi, że obiekt "Point" będzie można utworzyć na dwa sposoby (podając zero argumentów albo dwa argumenty). Kiedy wykorzystany zostanie konstruktor bezparametrowy, wtedy wywoła tego drugiego a na miejsce parametrów formalnych wstawi dwa zera.

Konstruktor klasy w języku C#

Słowo kluczowe "this" w języku C# pasuje nie tylko do jednego miejsca. Im nowsza wersja C#, tym więcej zastosowań tej frazy.


Odetchnijcie z ulgą, to koniec artykułu :). Na pewno występują jeszcze jakieś występowania, tylko nie natrafiłem na takie podczas czytania książki. Będę monitorować to w przyszłości kiedy natrafię na inne przypadki.

PODOBNE ARTYKUŁY