Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дополнительные вопросы по ООП.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
62.83 Кб
Скачать
  1. Способы передачи параметров в методы класса.

В программировании известны два способа передачи параметров в метод:

  • по значению – в метод передаются не сами фактические параметры, а их копии. В методе выполняется работа с копиями, сами фактические переменные не используются и метод не может изменить их значения.

  • по ссылке – в метод передаются сами параметры. В методе выполняется работа с самими параметрами и метод может изменить их значения.

В С# по умолчанию параметры передаются по значению (т.е. создаются копии параметров).

Для передачи параметров по ссылке нужно использовать специальные описатели ref или out.

class Program

{static void Main(string[] args)

{string s1 = "aaa";

string s2 = "bbb";

// передача по значению

swapMetod2(s1, s2);

// передача по ссылке

swapMetod(ref s1, ref s2); }

static void swapMetod(ref string x, ref string y)

{string z;

z = x; x = y; y = z;}

static void swapMetod2(string x, string y)

{string z;

z = x; x = y; y = z;}}

  1. Класс string. Назначение и методы.

Встроенный тип языка C# string соответствует классу FCL библиотеки System.String

public sealed class String : IComparable, ICloneable, IConvertible, IEnumerable

  • Создание строк

int myInteger = 5;

string intString = myInteger.ToString( );

  • Текстовые константы

string literalOne = "\\\\MySystem\\ProgrammingC#.c”

string verbatimLiteralOne = @"\\MySystem\ProgrammingC#.cs";

  • статические методы (string.метод)

Compare( ) – сравнение двух строк

Concat( ) - объединение

Copy( ) - копирование

Format( ) – форматирование

  • свойства класса

Length – количество символов

  • методы класса

string Insert(int StartIndex, string value) – вставляем подстроку в строку;

string Remove(int StartIndex, string value) – удаляем подстроку из строки;

string Trim( ) (TrimEnd, Trim Start) – удаление пробелов вначале и конце строки;

string ToLower( ) (ToUpper( )) – преобразование символов строки в нижний (верхний) регистр;

bool Contains(string s) – проверка, содержит ли строка заданную подстроку;

bool StartWith() (EndWith()) – проверка, начинается (заканчивается) ли строка с заданной подстроки.

string [] Split(params char[] separator) – разделить строку на массив строк, сиспользованием заданных разделяющих символов.

  1. Класс Console. Назначение и основные методы.

Статический класс System.Console предоставляет возможности для

    1. считывания данных из стандартного потока ввода (обычно это клавиатура),

    2. вывода данных в стандартный поток вывода (обычно это дисплей)

    3. вывода сообщений об ошибках в стандартный поток вывода ошибок (обычно это также дисплей)

  • Ввод следующего кода из стандартного потока ввода (блокирует возврат до нажатия Enter)

public static int Read ()

int a;

a = Console.Read();

  • Проверка наличия кода нажатой клавиши в буфере (без ее удаления)

public static bool KeyAvailable { get; }

  • Ввод следующего символа из буфера:

static ConsoleKeyInfo ReadKey ()

ConsoleKeyInfo ci;

ci = Console.ReadKey(false);

ConsoleKeyInfo – структура, описывающая нажатую клавишу (Key), включая символ (KeyChar) и состояние клавиш SHIFT, ALT и CTRL (Modifiers).

  • Основные методы вывода:

Write() - вывод текста в стандартный поток вывода

WriteLine() - вывод текста в стандартный поток вывода и переход к началу новой строки