Вступ до об'єктів в C #

Як уже відомо, C # є об'єктно-орієнтованою мовою програмування і вимовляється як C Sharp. Хоча C # розвинувся із C ++, обидва розрізняються між собою. Основні відмінності можна зрозуміти через C ++ проти C #.

Об'єкт - це примірник класу. Тут пам’ять виділяється динамічно для забезпечення виводу заданої програми. Отже, як можна пояснити це динамічне розподіл? Я б спробував пояснити це трохи нетехнічним способом. Об'єкти створюються для доступу до різних функцій або змінних, які визначені під класом. Отже, об’єкт не знає, до якого типу даних він насправді має доступ. Тож після отримання значення з елементів, що отримують доступ, він би впорядковував пам’ять динамічно.

Створення об’єкта

Загалом об’єкт можна створити двома способами. Один з них - за допомогою команди «new». Загальний синтаксис об’єкта знаходиться нижче:

Class-name object-name = new Class-name();

Тоді за допомогою імені об’єкта ми можемо отримати доступ до відповідних методів та змінних, які визначені всередині класу.

Інший спосіб визначення об'єкта - це посилання на інший об’єкт. Щось на зразок присвоєння значення.

Class-name object-name1 = new Class-name();
Class-name object-name2;
Object-name2=object-name1;

І ми можемо отримати доступ до змінної та методів у класі за допомогою об’єктів, object-name1 та object-name2.

Приклади об'єктів у C #

Тут ми маємо один приклад для кожного способу створення об’єкта в C #.

Нижче представлена ​​програма для знаходження квадрата числа.

using System;
class Square
(
public int side;
public Square(int a)
(
side=a;
)
public int Sq()
(
return side*side;
)
)
class First
(
static void Main(String () args)
(
int result;
Square s= new Square(4);
result=s.Sq();
Console.WriteLine("Square of the given number is " + result);
)
)

Вихід:

Отже, у вищенаведеній програмі

  • Ми створили клас Square і записали дві функції всередині класу. Одна функція, яка є також конструктором (назва функції, така ж, як і ім'я класу), - це для введення значення числа, а інша - для виконання фактичної операції.
  • У нашому класі, який має головну функцію всередині нього, ми ініціалізували об'єкт 's' і передали параметр, для якого числа ми насправді хочемо виконати квадратну операцію.
  • І ми оголосили змінний результат; ми передаємо висновок методу доступу до об'єкта 'Sq', який робить фактичну операцію.
  • Нарешті виводимо результат квадрата на нашу консоль.

Для нашого наступного способу створення об'єкта, наприклад, наведено нижче:

using System;
class Square
(
public int side;
public Square(int a)
(
side=a;
)
public int Sq()
(
return side*side;
)
)
class First
(
static void Main(String () args)
(
int result1, result2;
Square s1= new Square(4);
Square s2;
s2=s1;
result1=s1.Sq();
result2=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
)
)

Вихід:

І до розширення до цього ми можемо навіть призначити значення нашій змінній за допомогою об'єкта. Подивимося, як ми можемо це зробити.

using System;
class Square
(
public int Side;
public Square(int side)
(
Side=side;
)
public int Sq()
(
return Side*Side;
)
)
class First
(
static void Main(String () args)
(
int result1, result2, result3;
Square s1= new Square(4);
Square s2= new Square(6);
result1=s1.Sq();
result2=s2.Sq();
s2.Side=7;
result3=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
)
)

Тут ми отримали доступ до змінної та змінили її значення з 6 на 7. Потім результат друкується після ініціалізації значення до нового результату змінної3. Отриманий вихід знаходиться нижче.

Вихід:

До цього часу ми створили об'єкт і посилаємося на нього через єдиний текстовий формат. Тепер давайте подивимося, що якщо нам потрібен масив об’єктів для зберігання та маніпулювання нашими даними.

using System;
class Square
(
public int Side;
public void Sqr(int side)
(
Side=side;
)
public int Sq()
(
return Side*Side;
)
)
class First
(
static void Main(String () args)
(
int result1, result2, result3;
Square() sq = new Square(3);
sq(0)= new Square();
sq(1)= new Square();
sq(2)= new Square();
sq(0).Side=13;
sq(1).Side=85;
sq(2).Side=25;
result1=sq(0).Sq();
result2=sq(1).Sq();
result3=sq(2).Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
)
)

У вищезгаданій програмі те саме, що і раніше, ми створили масив об'єктів і присвоїли значення кожному об'єкту. Потім ми виконали свою другу функцію, щоб генерувати квадрат з двох чисел.

Вихід із зазначеного лежить нижче:

Вихід:

Як вправу ви можете спробувати завантажити бали 5 учнів з 3 предметів, використовуючи масив об’єкта?

Висновок

Як було показано вище, ми успішно створили об'єкт різними способами і використовували його для присвоєння значень змінним та виклику функцій, які присутні всередині класу. Але тут нам потрібно зрозуміти та дотримуватися кількох правил, заснованих на модифікаторах доступу. Об'єкт не може отримати доступ до змінних / функцій за допомогою "приватного" модифікатора доступу, який належить до іншого класу. Але може отримати доступ до змінних або функцій одного класу, хоча і декларується приватним модифікатором. Отже, таким чином існує набір правил, які визначаються щодо класів, змінних, функцій та об'єктів.

Спробуйте пограти в створенні об'єктів різними способами з різними модифікаторами доступу та ознайомтеся з результатами для ознайомлення із сферою застосування об’єктів та продовжуйте вчитися.

Рекомендовані статті

Це посібник з Об’єктів у C #. Тут ми обговорюємо різні способи створення об’єктів у C # разом із прикладами та його реалізацією коду. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Деструктор в C #
  2. C # Зазубрені масиви
  3. C # Функції
  4. Що таке багатопотокове читання в C #?
  5. Об'єкт на Java
  6. Методи багатопотокового читання в C #