找到 2628 篇文章 关于 C#

为什么我们不能在 C# 中的接口内指定访问修饰符?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:51:08

776 次浏览

接口方法是与外部世界的契约,它指定实现此接口的类执行一组特定的操作。接口成员始终是公共的,因为接口的目的是使其他类型能够访问类或结构。接口可以具有受保护的或内部的等访问修饰符。从而将“外部世界”限制为“整个外部世界”的子集。示例interface IInterface{    void Save(); } class Program{    static void Main(){       Console.ReadLine();    } }上述示例将正确编译,没有任何错误在 C# 8 之前,接口成员默认情况下是公共的。在 ... 阅读更多

在 C# 中,System.String 和 System.Text.StringBuilder 类哪个更好?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:49:44

2K+ 次浏览

主要区别在于 StringBuilder 是可变的,而 String 是不可变的。String 是不可变的,不可变意味着如果创建字符串对象,则无法修改它,并且它始终在内存中创建新的字符串类型对象。另一方面,StringBuilder 是可变的。这意味着,如果我们创建一个字符串生成器对象,那么我们可以在不每次都创建新实例的情况下执行任何操作,例如插入、替换或追加。它将在内存中的一个位置更新字符串,不会在内存中创建新的空间。示例 实时演示using System; using System.Text; class DemoApplication{    public static void Main(String[] args){       String systemString ... 阅读更多

C# 中方法的不同类型的参数是什么?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:47:17

2K+ 次浏览

C# 中的方法通常是程序中的一段代码或语句,它使用户能够重用相同的代码,最终节省了内存的过度使用,节省了时间,更重要的是,它提供了更好的代码可读性。在某些情况下,用户可能希望执行一个方法,但有时该方法需要一些有价值的输入才能执行并完成其任务。这些输入值称为参数。参数可以通过以下方式传递给方法:值参数引用参数输出参数值参数值参数复制了 ... 阅读更多

C# 中可用的不同类型的访问修饰符是什么?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:44:13

2K+ 次浏览

访问修饰符用于指定类成员或类本身类型的可访问性范围。有六种不同类型的访问修饰符。公共私有受保护内部受保护内部私有受保护公共访问修饰符实现公共访问修饰符的对象可以在项目中的任何地方访问,没有任何限制。示例using System; namespace MyApplication{    public class Program{       public static void Main(){          Person person = new Person();          Console.WriteLine(person.Name);          //Person Name 可访问,因为它 是公共的       }    }    public class Person{   ... 阅读更多

C# 中字符串前面的 @ 是什么?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:39:59

12K+ 次浏览

它将字符串标记为逐字字符串文字。在 C# 中,逐字字符串使用特殊符号 @ 创建。@ 被称为逐字标识符。如果字符串包含作为前缀后跟双引号的 @,则编译器将该字符串识别为逐字字符串并编译该字符串。@ 符号的主要优点是告诉字符串构造函数忽略转义字符和换行符。示例 实时演示using System; using System.IO; namespace DemoApplication{    class Program{       static void Main(string[] args){          Console.WriteLine("test string test string");          Console.WriteLine(@"test ... 阅读更多

C# 中两个问号一起 (??) 表示什么?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:37:56

3K+ 次浏览

它是空合并运算符。空合并运算符 ?? 如果其左操作数不为空,则返回其左操作数的值;否则,它计算右操作数并返回其结果。如果左操作数计算结果为非空,则 ?? 运算符不会计算其右操作数。可空类型可以表示一个未定义的值或来自该类型域的值。我们可以使用 ?? 运算符在左操作数具有可空类型时返回适当的值。如果我们尝试将可空值类型分配给非可空值类型而不使用 ?? 运算符,我们将得到 ... 阅读更多

C# 中 int 和 Int32 有什么区别?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:35:51

5K+ 次浏览

Int32 是 .NET 框架提供的一种类型,而 int 是 C# 语言中 Int32 的别名。Int32 x = 5;int x = 5;因此,在使用中,以上两个语句都将保存一个 32 位整数。它们编译成相同的代码,因此在执行时没有任何区别。唯一的细微差别是 Int32 只能与 System 命名空间一起使用。在验证值类型(如上所述)时,我们可以使用 Int32 或 int。typeof(int) == typeof(Int32) == typeof(System.Int32)示例以下示例显示了如何使用 System.Int32 声明整数。 实时演示using System; namespace DemoApplication{    class Program{     ... 阅读更多

如何在 C# 中的单个泛型列表中存储 n 个不同类型的列表?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:30:13

679 次浏览

我们可以通过创建对象列表列表,如下所示,在单个泛型列表中存储 n 个不同类型的列表。List list = new List();示例 实时演示using System; using System.Collections.Generic; namespace MyApplication{    public class Program{       public static void Main(){          List list = new List();          List list1 = new List();          list1.Add(101);          list1.Add(102);          list1.Add(103);          list.Add(list1);          List list2 = new List();          list2.Add("Test1");   ... 阅读更多

C# 中“is”关键字有什么用?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:28:19

310 次浏览

“is”关键字用于检查对象是否可以转换为特定类型。操作的返回类型是布尔值。示例using System; namespace DemoApplication{    class Program{       static void Main(){          Employee emp = new PermanentEmployee{             ID = 1,             Name = "Martin"          };          // 返回 true,因为派生类型可以转换为基类型。          if (emp is Employee){             ... 阅读更多

如果我们不确定要存储在变量中的值的类型。如何在 C# 中处理这种情况?

Nizamuddin Siddiqui
更新于 2020 年 8 月 4 日 06:25:55

67 次浏览

由于 C# 是一种强类型语言,因此每个变量和常量都有一个预定义的类型。在使用任何变量之前,我们必须告诉编译器变量将存储哪种类型的值。如果我们不确定类型,则可以使用动态编程来处理。动态编程由 dynamic 关键字支持。dynamic 关键字用于声明动态类型。动态类型告诉编译器对象定义为动态的,并在编译时跳过类型检查,将类型检查延迟到运行时。所有语法都经过检查,并在运行时抛出错误。示例 实时演示using System; namespace DemoDynamicKeyword{    class ... 阅读更多

广告