Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Об'єкти Класу | Вступ до об'єктно-орієнтованого програмування (ООП)
C# Понад Базовий Рівень

bookОб'єкти Класу

Об'єкт класу можна створити за допомогою наступного синтаксису:

index.cs

index.cs

copy
1
className variableName = new className();

Доступ до поля класу здійснюється за допомогою оператора крапки (.):

index.cs

index.cs

copy
1
variableName.fieldName

Наприклад:

index.cs

index.cs

copy
12345678910111213141516
using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player p1= new Player(); p1.username = "Don"; Console.WriteLine(p1.username); } }

Вираз new Player(); використовується для створення нового об'єкта, тоді як Player p1 використовується для створення змінної для зберігання цього нового об'єкта. Отже, простий запис Player p1; створить лише порожню змінну без об'єкта всередині, тому необхідно створити новий об'єкт і, відповідно, зберегти його у змінній: Player p1 = new Player();.

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

index.cs

index.cs

copy
12345678910111213141516
using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0].username = "Don"; // Error on this line Console.WriteLine(players[0].username); } }

Помилка повідомляє: "Object reference not set to an instance of an object", що означає, що ви намагаєтеся отримати доступ до даних об'єкта, якого не існує — об'єкт відсутній за індексом 0.

Це можна виправити, створивши об'єкт вручну за індексом 0:

index.cs

index.cs

copy
12345678910111213141516
using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0] = new Player(); players[0].username = "Don"; Console.WriteLine(players[0].username); } }
question mark

Який правильний синтаксис для створення нового об'єкта з класу Car?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 4

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

Can you explain why creating an array of objects doesn't automatically create the objects themselves?

How do I initialize all elements in an array of objects?

What does "Object reference not set to an instance of an object" mean in simple terms?

Awesome!

Completion rate improved to 2.04

bookОб'єкти Класу

Свайпніть щоб показати меню

Об'єкт класу можна створити за допомогою наступного синтаксису:

index.cs

index.cs

copy
1
className variableName = new className();

Доступ до поля класу здійснюється за допомогою оператора крапки (.):

index.cs

index.cs

copy
1
variableName.fieldName

Наприклад:

index.cs

index.cs

copy
12345678910111213141516
using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player p1= new Player(); p1.username = "Don"; Console.WriteLine(p1.username); } }

Вираз new Player(); використовується для створення нового об'єкта, тоді як Player p1 використовується для створення змінної для зберігання цього нового об'єкта. Отже, простий запис Player p1; створить лише порожню змінну без об'єкта всередині, тому необхідно створити новий об'єкт і, відповідно, зберегти його у змінній: Player p1 = new Player();.

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

index.cs

index.cs

copy
12345678910111213141516
using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0].username = "Don"; // Error on this line Console.WriteLine(players[0].username); } }

Помилка повідомляє: "Object reference not set to an instance of an object", що означає, що ви намагаєтеся отримати доступ до даних об'єкта, якого не існує — об'єкт відсутній за індексом 0.

Це можна виправити, створивши об'єкт вручну за індексом 0:

index.cs

index.cs

copy
12345678910111213141516
using System; class Player { public string username; } public class ConsoleApp { public static void Main(string[] args) { Player[] players = new Player[10]; players[0] = new Player(); players[0].username = "Don"; Console.WriteLine(players[0].username); } }
question mark

Який правильний синтаксис для створення нового об'єкта з класу Car?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 4
some-alt