学习c#的第二天

这篇具有很好参考价值的文章主要介绍了学习c#的第二天。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

C# 基本语法

using 关键字

class 关键字

C# 中的注释

成员变量

成员函数

类的实例化

标识符

C# 关键字


C# 基本语法

C# 是一种面向对象的编程语言。在面向对象的程序设计方法中,程序由各种相互交互的对象组成。相同种类的对象通常具有相同的类型,或者说,是在相同的 class 中。

例如,以 Rectangle(矩形)对象为例。它具有 length 和 width 属性。根据设计,它可能需要接受这些属性值、计算面积和显示细节。 让我们来看看一个 Rectangle(矩形)类的实现,并借此讨论 C# 的基本语法:

using System;

namespace Shapes
{
    public class Rectangle
    {
        // 成员变量,表示矩形的长度和宽度
        private double length;
        private double width;

        // 构造函数,用于初始化矩形的长度和宽度
        public Rectangle(double l, double w)
        {
            length = l;
            width = w;
        }

        // 方法,用于计算矩形的面积
        public double CalculateArea()
        {
            return length * width;
        }

        // 方法,用于显示矩形的长度和宽度,面积
        public void DisplayDetails()
        {
            Console.WriteLine("长度: " + length);
            Console.WriteLine("宽度: " + width);
            Console.WriteLine("面积: " + CalculateArea());
        }
    }

    class Program
    {
        static void Main()
        {
            // 创建一个 Rectangle 对象
            Rectangle rect = new Rectangle(5, 3);

            // 调用方法
            rect.DisplayDetails();
        }
    }
}

在上面的示例中,我们首先定义了一个Rectangle类,并声明了该类的成员变量、构造函数和方法。然后,在Program类的Main方法中,我们创建了一个Rectangle对象,并调用了它的DisplayDetails方法。

using 关键字

在C#中,using关键字有两种常见的用法:

1、引入命名空间:通过using关键字可以引入一个命名空间,使得在当前代码文件中可以直接使用该命名空间下的类型而不需要使用完整的限定名称。例如:

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("Hello, World!");
    }
}

在这个例子中,using System;语句引入了System命名空间,因此在Main方法中可以直接使用Console类而不需要写成System.Console.WriteLine("Hello, World!");。 

2、资源管理:在C#中,using语句还可以用于资源管理,特别是在处理需要显式释放的资源(比如文件、数据库连接等)时非常有用。例如:

using (var file = new System.IO.StreamWriter("example.txt"))
{
    file.WriteLine("Hello, World!");
}

在这个例子中,using语句创建了一个作用域,在作用域结束时会自动调用资源对象的Dispose方法,这样可以确保资源被及时释放,避免资源泄漏。

总之,using关键字在C#中有着重要的作用,既用于简化代码(引入命名空间),也用于资源管理,能够提高代码的可读性和可靠性。

注意:一个程序可以包含多个 using 语句。

class 关键字

在 C# 中,class 是一个关键字,用于定义一个类。类是面向对象编程的基本概念,用于描述一类对象的属性和行为。下面是 class 关键字的基本用法:

public class MyClass
{
    // 类的成员变量
    private int myField;

    // 类的构造函数
    public MyClass(int value)
    {
        myField = value;
    }

    // 类的方法
    public void MyMethod()
    {
        Console.WriteLine("MyField: " + myField);
    }
}

在上面的示例中,class 关键字用于定义了一个名为 MyClass 的类。类体中包含了类的成员变量 myField、构造函数 MyClass 和方法 MyMethod。这个类可以用来创建 MyClass 类型的对象,并访问其中定义的成员。

在面向对象编程中,类是一种模板或蓝图,用于创建具体的对象。类可以定义对象的属性(成员变量)和行为(方法),并且可以被实例化为具体的对象进行使用。使用 class 关键字可以为程序提供结构化和模块化的设计,从而方便地组织和管理代码。

总之,class 是 C# 中用于定义类的关键字,它是面向对象编程的基础之一,能够帮助我们更好地组织和抽象程序中的各种数据和行为。

C# 中的注释

注释在程序中起着非常重要的作用,它能够帮助其他开发人员理解代码的意图和功能,也可以提高代码的可维护性和可读性。

在C#中,有三种常见的注释方式:单行注释、多行注释和XML文档注释。

1、单行注释:使用双斜杠 // 进行单行注释。例如:

// 这是单行注释
int x = 5;  // 这也是单行注释

2、多行注释:使用斜杠加星号 /* */ 进行多行注释。例如:

/*
这是
多行
注释
*/
int y = 10;  /* 这也是多行注释 */

3、XML文档注释:XML文档注释用于编写特定格式的注释,以便生成代码文档。XML文档注释以三个连续的斜杠 /// 开始,并且通常用于注释类、方法、属性等。例如:

/// <summary>
/// 这是一个方法的说明
/// </summary>
/// <param name="x">参数x的说明</param>
/// <returns>返回值的说明</returns>
int MyMethod(int x)
{
    return x * 2;
}

 XML文档注释通常包含 <summary>、<param>、<returns> 等标签,用于描述方法或成员的作用、参数和返回值等信息。

成员变量

在 C# 中,成员变量是指定义在类或结构体中的变量,也可以称为字段(field)。成员变量用于存储对象的状态信息,每个类的对象都有自己的一组成员变量,这些变量描述了对象的特征和数据。成员变量可以具有不同的访问修饰符,如 public、private、protected 等,来控制对其访问的权限。

以下是一个简单的示例,展示了在C#中定义成员变量的方式:

public class Person
{
    public string name;  // 公有成员变量
    private int age;      // 私有成员变量

    public void SetAge(int newAge)
    {
        age = newAge;     // 可以在类的方法中访问私有成员变量
    }
}

在这个示例中,Person 类包含了两个成员变量 name 和 age。name 是公有成员变量,可以被外部访问,而 age 是私有成员变量,只能在类的内部访问。通过定义不同访问权限的成员变量,可以控制对象数据的封装性和访问权限,从而确保对象数据的安全性和一致性。

成员变量是面向对象编程中非常重要的概念,它们描述了对象的状态和属性,是对象封装的重要组成部分。

成员函数

在 C# 中,成员函数指的是定义在类或结构体中的函数,也可以称为方法(method)。成员函数用于描述对象的行为和操作,它们可以访问类的成员变量,并且可以执行特定的功能。C# 中的成员函数可以具有不同的访问修饰符,如 public、private、protected 等,来控制对其访问的权限。

以下是一个简单的示例,展示了在C#中定义成员函数的方式:

public class Calculator
{
    private int result;  // 私有成员变量

    public void Add(int a, int b)
    {
        result = a + b;  // 计算结果并存储到成员变量中
    }

    public int GetResult()
    {
        return result;  // 返回存储的结果
    }
}

在这个示例中,Calculator 类包含了两个成员函数 Add 和 GetResult。Add 方法用于将两个数相加并将结果存储到成员变量 result 中,而 GetResult 方法用于获取存储的结果并返回它。这两个方法描述了一个简单的计算器对象的行为。

通过定义成员函数,可以将对象的行为和功能封装起来,使得对象的使用者可以通过调用方法来实现特定的操作,而不需要了解方法内部的具体实现细节。成员函数可以访问对象的成员变量,也可以调用其他成员函数,从而实现复杂的功能。

类的实例化

类的实例化就是根据已有的类(class)来创建该类的一个对象(object)。在面向对象的编程中,类定义了对象的属性和行为,而实例化则是根据这个定义来创建具体的对象,使得我们可以使用这个对象来访问类的属性和方法。

打个比方:你设计的飞机模型就相当于程序中的类,而生产出来的飞机就是对象。实例化就好像是通过飞机模型来生产真正的飞机一样,它允许我们在程序中创建出具体的对象,从而可以利用这些对象来完成各种任务。

// 创建一个 Rectangle 对象
Rectangle rect = new Rectangle(5, 3);

标识符

标识符是用来命名类、变量、函数或其他用户定义的项目的名称。在C#中,标识符的命名必须遵循一些基本规则,这有助于确保代码的清晰和一致性。以下是C#中标识符的命名规则:

  1. 标识符必须以字母、下划线或@符号开头,后面可以跟随一系列的字母、数字(0-9)、下划线(_)或@符号。
  2. 标识符中的第一个字符不能是数字。
  3. 标识符中不得包含嵌入的空格或特殊符号,例如?-+!#%^&*()[]{} .;:“” '/ \等。
  4. 标识符不能是C#关键字,除非它们带有@前缀。例如,@if是有效的标识符,但if不是,因为if是关键字。
  5. 标识符是区分大小写的,大写字母和小写字母被视为不同的字符。
  6. 标识符不能与C#的类库名称相同。

C# 关键字

关键字是 C# 编译器预定义的保留字。这些关键字不能用作标识符,但是,如果您想使用这些关键字作为标识符,可以在关键字前面加上 @ 字符作为前缀。

在 C# 中,有些关键字在代码的上下文中有特殊的意义,如 get 和 set,这些被称为上下文关键字(contextual keywords)。

下表列出了 C# 中的保留关键字(Reserved Keywords)和上下文关键字(Contextual Keywords):

保留关键字
abstract as base bool break byte case
catch char checked class const continue decimal
default delegate do double else enum event
explicit extern false finally fixed float for
foreach goto if implicit in in (generic
modifier)
int
interface internal is lock long namespace new
null object operator out out
(generic
modifier)
override params
private protected public readonly ref return sbyte
sealed short sizeof stackalloc static string struct
switch this throw true try typeof uint
ulong unchecked unsafe ushort using virtual void
volatile while
上下文关键字
add alias ascending descending dynamic from get
global group into join let orderby partial
(type)
partial
(method)
remove select set

 文章来源地址https://www.toymoban.com/news/detail-756213.html

到了这里,关于学习c#的第二天的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 学习c#的第二十四天

    目录 C# 事件(Event) 事件概述 如何订阅和取消订阅事件 以编程方式订阅事件 使用匿名函数订阅事件 取消订阅 如何发布符合 .NET 准则的事件 发布基于 EventHandler 模式的事件 如何在派生类中引发基类事件 如何实现接口事件 如何实现自定义事件访问器 示例 事件(Event) 基本

    2024年02月04日
    浏览(41)
  • 预计练习两年半的安全服务练习生的第二天

            form表单是HTML语言中用于向服务器提交信息的标签         常见属性 action 指定将表单数据发送到哪个URL method 指定提交表单数据的方法,常用的有GET和POST,一般我们用POST,区别是:POST将数据作为HTTP发送,GET将数据作为URL查询字符串发送 enctype encode type,当

    2024年02月13日
    浏览(50)
  • WPF C# .NET7 基础学习

    学习视频地址:https://www.bilibili.com/video/BV1hx4y1G7C6?p=3vd_source=986db470823ebc16fe0b3d235addf050 开发工具:Visual Studio 2022 Community 基础框架:.Net 6.0 下载创建过程略 .Net和.Framework 区别是Net是依赖项,Framework是引用 1.定义一个命名空间, 最常用 不只包括using namespace,还用开头使用的usin

    2024年02月10日
    浏览(47)
  • C# .Net学习笔记—— 加密和解密算法

    1、MD5不可逆加密 2、Des对称可逆加密 3、RSA非对称可逆加密 4、数字证书SSL 调用 得出结果 * 通过上面结果可以得出规律 MD5可以得到一串定长的随机编码 传入的字符串或者文件相同,得到的编码是相同的 只要稍微有一点不同得到的MD5都是不同的 1、账号登陆,数据库内防止看

    2024年01月22日
    浏览(50)
  • C# .Net学习笔记—— 异步和多线程(Thread)

     注意:现在不建议使用 thread.Suspend(); //线程挂起                                  和 thread.Resum();   //唤醒线程 thread.Abort(); //销毁,方法是抛异常,也不建议使用 1、Join 线程等待 2、thread.ThreadState; //线程状态 3、thread.IsBackground; (i)默认是前台线程,启动之后一定要

    2024年02月02日
    浏览(41)
  • 分布式学习第二天 redis学习

    目录 1. 数据库类型 1.1 基本概念 1.2 关系/非关系型数据库搭配使用 2. Redis   2.1 基本知识点 2.2 redis常用命令 2.4 redis数据持久化 3 hiredis的使用 4. 复习 1. 数据库类型 1.1 基本概念 关系型数据库 - sql 操作数据必须要使用sql语句 数据存储在磁盘 存储的数据量大 举例: mysql oracle s

    2024年02月09日
    浏览(38)
  • Docker学习第二天

    docker search  xxx      从镜像库查询 docker pull xxx   从镜像库中拉取镜像 docker image ls                   查看本地镜像 docker run -it --name mysql1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123 -d mysql 创建mysql容器 设置项详解: -it : 以交互模式运行容器,并为容器重新分配一个伪输入终端 -- name

    2024年01月19日
    浏览(37)
  • 学习SpringMVC第二天

     第一种方法与springmvc无关 ,  用的是tomcat的东西在web.xml里配置  第二种方法 : 用SpringMVC解决 ,设置静态资源映射匹配 , 在Spring-mvc.xml里配置 第三种方法: 还是用SpringMVC解决 , 直接加一个 第二种方法与第三种方法都是用springmvc容器完成.      这是原来的配置 , 显得非常繁琐  

    2024年02月22日
    浏览(43)
  • Ajax学习笔记第二天

    喜欢的东西太贵了,我一咬牙,狠下心决定不喜欢了! 【 一.GET请求 】 【 1.1 URL即信息 】 我们知道php的相关运算都是在服务器端进行的,此时我们要考虑一个问题,如何将要计算的数字带给服务器?我们可以通过URL传递数据: ?xingming=ikunGGnianling=20xingbie=男 一个标准的URL网址

    2024年02月07日
    浏览(40)
  • 学习JAVA打卡第四十二天

    正则表达式及字符串的替换与分解 ⑴正则表达式 正则表达式是string对象的字符序列,该字符序列中含有具有特殊意义的字符,这些特殊字符称作正则表达式的元字符。  注:由于“   ”代表任何一个字符,所以在正则表达式中如果想使用普通意义的点字符必须使用[.]或5

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包