-1

请给我看一个简单的代码,其中类名作为方法中的返回类型?项目中的一些编码作为类名作为方法的返回类型?我不明白这是什么意思?

谁能给我一个关于那个的简要解释和简单的例子?

例如

public Dataset getEmployees()
{
-----
----
------
}

在上面的代码中,我们使用 ( Dataset)(它基本上是一个类),但这里我们使用方法的返回类型getEmployees

我想要和例子一样。而不是Dataset,用户定义的类应该作为返回类型。我希望你明白我的疑问是什么。

4

4 回答 4

1

考虑一个用户定义的类:

public class Manipulator{
    class UserDefined{
      private int data;
      public int getData(){ return data;}
      public void setData(int d) {data = d;}
      public UserDefined(){ d = 0; }
    }

    public UserDefined returnUserDefined()
    {
       return new UserDefined();
    }

    public void doSomethingWithIt(UserDefined d)
    {
       d.setData(500);
    }

    public int getDataWithingUserDefined(UserDefined d)
    {
       return d.getData();
    }
}

从以上方法可以看出,如何返回/使用UserDefined类型(或类)的对象

于 2013-01-18T12:46:37.507 回答
0

这会吗?

public class ExampleItem
{
    public string MyString;
    public ExampleItem(string stringToUse)
    {
       this.MyString = stringToUse;
    }

    public ExampleItem MakeExampleItem(string str)
    {
       return new ExampleItem(str);
    }
}
于 2013-01-18T12:44:34.360 回答
0

由于“getEmployees”暗示了不止一个结果,听起来你只是想要:

public List<Employee> GetEmployees() { ... } 

? 还是我理解了这个问题?

于 2013-01-18T12:45:02.207 回答
0

我假设您想返回 a List<Employee>or IEnumerable<Employee>

public class Employee
{
    public int EmpID { get; set; }
    public string Name { get; set; }
}

和一个返回它的方法(假设 SQL-Server 作为 rdbms 用于演示目的):

public static IEnumerable<Employee> getAllEmployees()
{
    string sql = "SELECT EmpID, Name FROM Employee ORDER BY Name";
    using (var con = new SqlConnection(Settings.Default.ConnectionString))
    {
        using (var cmd = new SqlCommand(sql, con))
        {
            con.Open();
            using (SqlDataReader dr = cmd.ExecuteReader())
            {
                var list = new List<Employee>();
                while (dr.Read())
                {
                    var emp = new Employee();
                    emp.EmpID = dr.GetInt32(0);
                    emp.Name = dr.GetString(1);
                    list.Add(emp);
                }
                return list;
            }
        }
    }
}
于 2013-01-18T12:50:32.420 回答