【发布时间】:2020-02-01 17:34:48
【问题描述】:
我正在关注这门课程here 和this is live demo
我有几个问题要问你,因为我想确认我理解我正在阅读的内容:
1)为什么在下面的代码中创建对象时直接设置值
Transaction t1 = new Transaction("8877", "6/25/2018");
而不是像下面那样做;哪个不行!!!
Transaction transac1 = new Transaction();
transac1.("1234", "2019/10/03");
2) public Transaction() { 和 public Transaction(string c, string d) 是不是重载概念?
3) 下面是构造方法,使用重载吗?
public Transaction()
{
tCode = " ";
tDate = " ";
}
4) 为什么 Transaction 类没有属性,尽管我只看到下面两个带有私有访问修饰符的字段/变量。而我在 OOP 书中读到,您必须始终使用属性而不是从外部公开字段。
private string tCode;
private string tDate;
public interface ITransactions
{
// interface members
void showTransaction();
}
public class Transaction : ITransactions
{
private string tCode;
private string date;
public Transaction()
{
tCode = " ";
date = " ";
}
public Transaction(string c, string d)
{
tCode = c;
date = d;
}
public void showTransaction()
{
Console.WriteLine("Transaction ID: {0}", tCode);
Console.WriteLine("Date: {0}", date);
}
}
class Tester
{
static void Main(string[] args)
{
Transaction t1 = new Transaction("8877", "6/25/2018");
Transaction t2 = new Transaction("5656", "7/25/2018");
t1.showTransaction();
t2.showTransaction();
Console.ReadKey();
}
}
【问题讨论】:
-
了解
Types of constructorc-sharpcorner.com/article/… -
谢谢。其他问题呢?
-
您也可以阅读:What is polymorphism?
-
谢谢。你为什么向我推荐那本书?你能给我一个概述吗?因为我读了很多书,但我仍然需要更多练习才能理解我在这些书中读到的内容。
标签: c#