Основи Об'єктно-Орієнтованого Програмування
ООП - Вступ
Об'єктно-орієнтоване програмування (ООП) - це парадигма програмування, яка базується на ідеї моделювання програми як набору об'єктів, які взаємодіють один з одним.
Пояснення модифікаторів доступу public і private:
- public (відкритий):
- Модифікатор
publicвказує на те, що члени класу (поля, методи) є доступними з будь-якої частини програми, навіть з інших класів. - Це означає, що інші частини програми можуть читати та змінювати ці члени.
- Модифікатор
public class Example
{
public int PublicField;
public void PublicMethod()
{
// Цей метод є відкритим і доступним ззовні класу Example.
}
}- private (приватний):
- Модифікатор
privateвказує на те, що члени класу обмежені доступом тільки в межах самого класу. - Інші класи не можуть звертатися до приватних членів цього класу напряму.
- Модифікатор
public class Example
{
private int PrivateField;
private void PrivateMethod()
{
// Цей метод є приватним і доступний тільки всередині класу Example.
}
}Отже, використання модифікаторів доступу public і private дозволяє контролювати видимість і доступність членів класу в програмі. public робить члени класу доступними для зовнішніх частин програми, тоді як private зберігає їх приватними та доступними лише всередині класу, допомагаючи зберегти інкапсуляцію та контроль над даними.
Об'єктно-орієнтоване програмування (ООП) - це парадигма програмування, яка базується на ідеї моделювання програми як набору об'єктів, які взаємодіють один з одним. ООП використовує класи та об'єкти як основні концепції. Давайте почнемо з основ синтаксису класу.
using System;
// Оголошення класу
class Dog
{
// Змінні класу (поля)
public string Name;
public int Age;
// Конструктор класу (ініціалізує об'єкт)
public Dog(string name, int age)
{
Name = name;
Age = age;
}
// Метод класу
public void Bark()
{
Console.WriteLine(Name + " гавкає!");
}
}
class Program
{
static void Main()
{
// Створення об'єкта класу Dog
Dog myDog = new Dog("Рекс", 3);
// Доступ до полів та виклик методу об'єкта
Console.WriteLine("Ім'я собаки: " + myDog.Name);
Console.WriteLine("Вік собаки: " + myDog.Age);
myDog.Bark();
}
}У цьому прикладі ми створили клас Dog, який має поля (змінні) для імені та віку собаки, конструктор для ініціалізації об'єкта і метод Bark, який виводить повідомлення про гавкання собаки.
В методі Main, ми створюємо об'єкт myDog класу Dog, ініціалізуємо його іменем і віком, а потім викликаємо метод Bark для цього об'єкта.
Класи - Синтакс
Як створювати, писати та використовувати класи в C#.
- 1
Оголошення Класу (Class Declaration):
Почнемо з пустого класу та пояснимо кожну частину:
// Оголошення пустого класу з іменем "MyClass" class MyClass { // Тут можуть бути змінні та функції класу }class MyClass: Ця стрічка починає оголошення класу і називає його "MyClass". Класи в C# завжди оголошуються ключовим словомclass, за яким слідує ім'я класу.
- 2
Змінні Класу (Class Variables):
Додамо змінні (поля) до класу та пояснимо їх:
class MyClass { // Змінні класу (поля) public int myField; private string myString; }public int myField;: Ця стрічка оголошує публічну зміннуmyFieldтипуint. Публічні змінні доступні для звернення з інших частин програми.private string myString;: Ця стрічка оголошує приватну зміннуmyStringтипуstring. Приватні змінні не доступні ззовні класу та можуть бути використані лише всередині класу.
- 3
Конструктор Класу (Class Constructor):
Додамо конструктор до класу:
class MyClass { public int myField; private string myString; // Конструктор класу public MyClass(int field, string str) { myField = field; myString = str; } }public MyClass(int field, string str): Ця стрічка визначає конструктор класуMyClass, який приймає два параметри:fieldтипуintтаstrтипуstring. Конструктор виконується при створенні об'єкта класу та ініціалізує поля класу значеннями переданими в параметрах.
- 4
Методи Класу (Class Methods):
Додамо метод до класу:
class MyClass { public int myField; private string myString; public MyClass(int field, string str) { myField = field; myString = str; } // Метод класу public void MyMethod() { Console.WriteLine("Це мій метод."); } }public void MyMethod(): Ця стрічка визначає публічний методMyMethodбез параметрів. Метод виконується при виклику і виводить повідомлення на консоль.
Таким чином, ми створили клас MyClass з полями, конструктором та методом. Класи дозволяють організовувати дані та функції в одному логічному блоку, що полегшує розробку та обслуговування програми.
Приклади класів
Приклади сторення та використання класів.
Приклад 1: Клас "Користувач"
Припустимо, ми хочемо створити клас для репрезентації користувача в нашій програмі. Клас "Користувач" може містити інформацію про ім'я, вік та електронну пошту користувача. Ось як виглядає такий клас:
using System;
class User
{
// Поля класу
public string Name;
public int Age;
public string Email;
// Конструктор класу для ініціалізації об'єкта
public User(string name, int age, string email)
{
Name = name;
Age = age;
Email = email;
}
// Метод для виведення інформації про користувача
public void DisplayInfo()
{
Console.WriteLine("Ім'я: " + Name);
Console.WriteLine("Вік: " + Age);
Console.WriteLine("Email: " + Email);
}
}
class Program
{
static void Main()
{
// Створення об'єкта класу User
User user1 = new User("Анна", 25, "anna@example.com");
// Виведення інформації про користувача
user1.DisplayInfo();
}
}У цьому прикладі ми створили клас "User" із трьома полями: Name, Age, та Email. Конструктор класу дозволяє нам ініціалізувати ці поля при створенні об'єкта.
В методі DisplayInfo ми виводимо інформацію про користувача на консоль. У методі Main ми створюємо об'єкт user1 класу User, ініціалізуємо його даними та виводимо інформацію про користувача на екран.
Приклад 2: Клас "Прямокутник"
Інший приклад - створення класу "Прямокутник" для обчислення площі та периметру прямокутника на основі його довжини та ширини:
using System;
class Rectangle
{
// Поля класу
public double Length;
public double Width;
// Конструктор класу для ініціалізації об'єкта
public Rectangle(double length, double width)
{
Length = length;
Width = width;
}
// Метод для обчислення площі прямокутника
public double CalculateArea()
{
return Length * Width;
}
// Метод для обчислення периметру прямокутника
public double CalculatePerimeter()
{
return 2 * (Length + Width);
}
}
class Program
{
static void Main()
{
// Створення об'єкта класу Rectangle
Rectangle rect = new Rectangle(5.0, 3.0);
// Обчислення та виведення площі та периметру
double area = rect.CalculateArea();
double perimeter = rect.CalculatePerimeter();
Console.WriteLine("Площа: " + area);
Console.WriteLine("Периметр: " + perimeter);
}
}У цьому прикладі ми створили клас "Rectangle" з полями Length та Width. Конструктор дозволяє ініціалізувати ці поля при створенні об'єкта. Ми також маємо методи CalculateArea та CalculatePerimeter, які обчислюють площу та периметр прямокутника відповідно.
В методі Main ми створюємо об'єкт rect класу Rectangle, ініціалізуємо його довжиною та шириною, обчислюємо площу та периметр, і виводимо їх на екран.
build info
- compiler
- 2.0.5.1 · 4054EF9BF6C4510A
- built
- 2026-11-08 14:31:25 UTC
WebUniverse