我对学习C#(来自Java和C++背景)相当新,我对手动垃圾处理有疑问:是否有可能手动销毁C#中的对象?我知道IDisposable接口,但是假设我正在处理一个我没写过的类而且它没有实现它?它不会有一个.Dispose()方法,使和using { }超出,并且.Finalize始终为protected还是private这样,要么是不是一种选择.
(我只是想了解什么是可能在C#在这种情况下,我想,如果一切都失败了,我可以继承的假设ImNotDisposable类,以便它不实现IDisposable.)
这似乎是非常愚蠢和基本的问题,但我试图谷歌它,但无法找到一个满意的答案,
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public Person(){}
public Person(string name, int age)
{
Name = name;
Age = age;
}
//Other properties, methods, events...
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我有这样的课程,创建对象的最佳方法是什么?
Person p=new Person("abc",15)
Run Code Online (Sandbox Code Playgroud)
要么
Person p=new Person();
p.Name="abc";
p.Age=15;
Run Code Online (Sandbox Code Playgroud)
这两种方法有什么区别,创建对象的最佳方法是什么?