Инициализация в конструкторе или теле класса ? - C#
Формулировка задачи:
Вопрос я думаю достаточно нубский, но google не помог.
например есть класс
как будет правильнее
или так
и в чём разница инициализации экземпляра Сenter в теле класса или конструкторе класса.
и в каких случаях тот или иной способ предпочтительнее.
в документации по С++ нашёл что-то типа порядка инициализации, но честно говоря не стал тратить времени и засорять свой мозг, и так там скоро паштет будет
прошу пояснить или дать ссылки на статейку проясняющая этот вопрос.
ps учусь сам, поэтому переживаю что упускаю какие-то важные аспекты теории.
public class Point { public int X {get; set;} public int Y {get; set;} }
public class ShapeCircle { public Point Center; public ShapeCircle(int x, int y) { Center = new Point(); Center.X = x; Center.Y = y; } }
public class ShapeCircle { public Point Center = new Point(); public ShapeCircle(int x, int y) { Center.X = x; Center.Y = y; } }
Решение задачи: «Инициализация в конструкторе или теле класса ?»
textual
Листинг программы
using System; using System.Collections.Generic; namespace ConsoleApplication { public struct Point { public int X { get; set; } public int Y { get; set; } } public class ShapeCircle { public Point Center { set; get; } public ShapeCircle(int x, int y) { Center = new Point { X = x, Y = y }; } } public class Program { static void Main(string[] args) { ShapeCircle sc = new ShapeCircle(10, 20); Console.WriteLine("{0}, {1}", sc.Center.X, sc.Center.Y); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д