Я читал несколько уроков по C#, и вдруг мне кажется, что я никогда не пытался использовать объект-класс в качестве параметра при создании метода.C# Передача класса объекта в качестве параметра метода
К примеру, я никогда бы не подумал об этом:
static void GiveBookAName(Gradebook book, string bookName)
{
book.Name = bookName;
}
Я уверен, что я сделал бы что-то вроде этого:
public void GiveBookAName(string bookName)
{
Name = bookName;
}
//in other class
Gradebook book = new Gradebook()
book.GiveBookAName("TheGradebook");
Из-за этого, я, как правило, создание экземпляра класса здесь и там. Я имел в виду, что если мне нужно получить доступ к классу X в классе A & B, я создам экземпляр класса X как в классе A & B. Теперь я понимаю, что если я начну передавать класс объекта в качестве параметра, у меня могут быть все мои экземпляры в одно место (обычно класс с Main()
). Это необходимо?
Скажите что? В вашем первом примере имеет смысл передать 'book', потому что иначе метод не может принять меры.Однако в вашем втором примере «Книга», по-видимому, является членом одного и того же класса, поэтому метод не требует передачи объекта - метод может получить к нему доступ напрямую. Эти два случая сильно отличаются друг от друга. Если вы все время проходите объекты, то, вероятно, у вас плохой дизайн. –