Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
89 / 57 / 15
Регистрация: 21.08.2015
Сообщений: 959
1

Аксессоры что можно, а что нельзя?

24.07.2017, 16:27. Просмотров 479. Ответов 1
Метки нет (Все метки)


Добрый день.
Возник такой вопрос по поводу аксессоров, а что туда вообще можно вставить?
Например, перед тем как получить значение переменной _FilePath я бы хотел его проверить на предмет разнообразных ошибок, ну скажем удостоверится что файл указанный в пути существует.
Как это лучше сделать? Написать необходимый код в аксессоре или создать отдельный метод, который будет делать return в случаи отсутствия файла по указанному пути?

Зачем мне нужна дополнительная переменная? _FilePath
В книжках говорят, что я должен её сделать, но не сходят до объяснения на кой лад это надо. Объясните кто нибудь вкратце, или дайте ссылку.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Project1.Глава10__Индексаторы_;
namespace Project1.Глава10__Индексаторы_
{
    class ProgrammSettings
    {
        private string _FilePath;
 
        public string FilePath
        {
            get { return _FilePath; }
            set { _FilePath = value; }
        }
    }
}
 
class go
{
    static void Main()
    {
        ProgrammSettings obSettings = new ProgrammSettings();
        obSettings.FilePath = "C:\\temp";
 
        Console.WriteLine(obSettings.FilePath);
        Console.ReadKey();
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.07.2017, 16:27
Ответы с готовыми решениями:

Как сделать так, что-бы текст из TextBox нельзя было убрать, но можно скопировать
Здравствуйте я новичёк в изучении c#. Как сделать так что-бы текст нельзя было убрать только...

Что можно/нельзя сделать на Конструкторе от ucoz?
Здравствуйте. К знакомому с предложением работать программистом обратился молодой человек, создает...

Что можно такого на SQL написать, чего нельзя сделать с использованием языка общего назначения?
Добрый день! Что можно такого на SQL написать, чего нельзя сделать с использованием языка общего...

Что можно сделать на языке C++, но нельзя сделать на C#
Расскажите пожалуйста, что можно сделать на языке C++, но нельзя сделать на C#. И наоборот)

1
Модератор
Эксперт .NET
5304 / 4100 / 1183
Регистрация: 12.10.2013
Сообщений: 11,909
Записей в блоге: 2
24.07.2017, 16:33 2
Цитата Сообщение от Чипс Посмотреть сообщение
Как это лучше сделать?
Как вам удобнее. Если код небольшой-можно прямо в свойстве. Если большой-выносите в отдельный метод.
Цитата Сообщение от Чипс Посмотреть сообщение
Зачем мне нужна дополнительная переменная? _FilePath
Это поддерживающее поле для свойства. Без него оно просто работать не будет.
Грубо говоря, свойство-это удобство синтаксиса, в реальности можете представить, что это два метода-сеттер для установки поля и геттер-для его получения внешним кодом.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.07.2017, 16:33

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Что такого можно послать в input что-бы вызвать runtime error?
input производится в самом начале программы, и она вылетает с runtime error. Более конкретную инфу...

Что нужно прописать, что бы в таблицу можно было ФИО добавить?
Вот sql запрос...CREATE TABLE `tz_members` ( `id` int(11) NOT NULL auto_increment, `usr`...

Что в этой программе можно изменить (что бы улучшить) И как ее усовершенствовать ?
Program Kalkulator ; Label m1,m2; Var Operation,cal:byte; a,b:real; Begin m1:...

Sleep(8000) - что значит? На что можно заменить в борланд с++?
Не распознаёт Sleep(8000) . Если за комментировать пишет что f заданно но не используется. Как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.