首页 > 学院 > 开发设计 > 正文

C# for Beginner Part 45 to 55

2019-11-17 02:24:05
字体:
来源:转载
供稿:网友

C# for Beginner Part 45 to 55

Part 45 C# Tutorial Why Enums

Enums are strongly typed constants.

If a PRogram uses set of integral numbers, consider replacing them with enums. Otherwise the pragram becomes less

Readable Maintainable

Part 46 C# Tutorial Enums Example

public enum gender

{

male,

female

}

Part 47 C# Tutorial Enums in c#

If a program uses set of intergral numbers, consider replacing them with enums,which makes the program more readable and maintainable

1,Enums are enumerations.

2,Enums are strongly typed constants(常量). Hence(因此),an explicit(显式) cast is needed to convert from enum type to an integral type and vice versa.Also, an enum of one tpe cannot be implicitly(隐式) assigned(指定) to an enum of another type even though the underlying value of their members are the same.

3,the default underlying type of an enum is int.

4, the defalut value for first element is ZERO and gets incremented(递增) by 1.

5,It is possible to customize the underlying type and values.

6,Enums are value types.

7,Enum keyWord(all small letteres) is used to create enumerations, where as Enum class,contains static GetValues() and Get Names() methods which can be used to list Enum underlying type values and Names.

Part 48 C# Tutorial Difference between Types and Type Members

Part 49 C# Tutorial access Modifiers in C#

Part 50 C# Tutorial Internal and Protected Internal Access Modifiers in C#

Part 51 C# Tutorial Access Modifiers for types

Part 52 C# Tutorial Attributes in C#

Part 53 C# Tutorial Reflection in C#

Part 54C# Tutorial Reflection Example

here is the code

private void btnDiscover_Click(object sender, EventArgs e) { lbMethods.Items.Clear(); lbProperties.Items.Clear(); lbConstructor.Items.Clear(); string typeName = txtTypeName.Text.Trim(); Type t = Type.GetType(typeName); if (t == null) { MessageBox.Show("Type Is No Exit, Please Enter A Right Type!", "Warnning", MessageBoxButtons.OK); txtTypeName.Clear(); txtTypeName.Focus(); } else { MethodInfo[] methods = t.GetMethods(); PropertyInfo[] properties = t.GetProperties(); ConstructorInfo[] constructors = t.GetConstructors(); foreach (var method in methods) { lbMethods.Items.Add(string.Concat(method.ReturnType.Name," ", method.Name)); } foreach (var property in properties) { lbProperties.Items.Add(string.Concat(property.PropertyType.Name, " ", property.Name)); } foreach (var constructor in constructors) { lbConstructor.Items.Add(constructor.ToString()); } } }

Part 55 C# Tutorial Late binding using reflection


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表