自学内容网 自学内容网

C# 教程总结概括

C# 教程

C# 是一种由微软开发的现代、面向对象的编程语言,广泛应用于Windows桌面应用程序、Web应用程序、游戏开发和移动应用程序等多个领域。本教程将详细介绍C#的基础知识、编程语法、数据类型、控制结构以及面向对象编程等方面的内容。

基础知识

什么是C#?

C#,读作“C Sharp”,是一种简单、安全、稳定、通用的面向对象编程语言。它继承了C/C++的强大功能,同时抛弃了一些复杂特性,并与Java非常类似。

C#的应用场景

C#运行在.NET Framework上,可以开发不同类型的应用程序,包括桌面应用程序、网络应用程序、分布式应用程序、Web服务应用程序、数据库应用程序等。

编程语法

变量与数据类型

在C#中,变量是存储数据的基本单位。声明变量时,需要指定其数据类型和名称。

int age = 30; // 声明一个整型变量age,并初始化为30
string name = "Alice"; // 声明一个字符串类型变量name,并初始化为"Alice"
bool isHappy = true; // 声明一个布尔类型变量isHappy,并初始化为true

运算符

C#提供了丰富的运算符,用于进行各种运算操作,包括算术运算符、赋值运算符、关系运算符和逻辑运算符等。

int a = 10;
int b = 5;
int sum = a + b; // 使用算术运算符+计算a和b的和
bool isGreater = a > b; // 使用关系运算符>判断a是否大于b

数据类型

C#支持多种数据类型,包括值类型和引用类型。
C#支持多种数据类型,包括值类型和引用类型。值类型主要包括整数类型(如int、short、long等)、浮点数类型(如float、double等)、字符类型(char)和布尔类型(bool)。这些数据类型直接存储值,当你将一个值类型赋给另一个变量时,会创建一个新的副本。

以下是一个C#代码示例,说明了值类型直接存储值,当将一个值类型赋给另一个变量时,会创建一个新的副本:

using System;

namespace ValueTypeExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 声明并初始化一个整数变量
            int num1 = 10;

            // 将num1的值赋给另一个整数变量
            int num2 = num1;

            // 修改num2的值
            num2 = 20;

            // 输出num1和num2的值
            Console.WriteLine("num1的值: " + num1); // 输出: num1的值: 10
            Console.WriteLine("num2的值: " + num2); // 输出: num2的值: 20
        }
    }
}

在这个示例中,我们声明了一个整数变量num1并将其值设置为10。然后,我们将num1的值赋给另一个整数变量num2。接下来,我们修改num2的值为20。最后,我们输出num1num2的值。

从这个示例中,我们可以看到,当我们将num1的值赋给num2时,实际上是为num2创建了一个新的副本。因此,当我们修改num2的值时,num1的值不会受到影响。这表明了值类型直接存储值,并且在将一个值类型赋给另一个变量时,会创建一个新的副本。

引用类型包括类、接口、数组和字符串等。引用类型存储的是对象在内存中的地址,而不是对象本身的值。当你将一个引用类型赋给另一个变量时,实际上是将对象内存地址的引用复制给新变量。这意味着两个变量将引用同一个对象,改变其中一个变量的值,另一个变量的值也会受到影响。

费曼学习法解释: 简单来说,引用类型就像是我们生活中的地址一样。当我们创建一个类、接口、数组或字符串时,它们在计算机内存中都有一个地址。我们把这些地址存储在变量里。当我们把一个引用类型的变量赋给另一个变量时,就像是把一张写有地址的纸条从一本笔记本上撕下来,贴到另一本笔记本上。这样一来,两本笔记本上的地址都是相同的,它们都指向同一个对象。所以,当我们改变其中一个变量的值时,另一个变量的值也会跟着改变,因为它们都指向同一个对象。

C#代码例子:

class Person
{
    public string Name { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        // 创建一个Person对象
        Person person1 = new Person { Name = "张三&

原文地址:https://blog.csdn.net/j17805056906/article/details/143658949

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!