C# 是什么?

简介: C# 是什么?

C# 语言是微软推出的一款面向对象的编程语言,凭借其通用的语法和便捷的使用方法受到了很多企业和开发人员的青睐。


C# 语言具备了面向对象语言的特征,即封装继承多态,并且添加了事件委托,增强了编程的灵活性。


认识 C#

C# (英文名为 CSharp ) 是微软开发的一种面向对象的编程语言,其语法与 C++ 类似,但在编程过程中要比 C++ 简单。


提到 C# 不得不介绍其创始人 Anders ,他可谓是编程语言的奇才。他在开发 C# 语言之前曾开发了大家熟知的 Delphi 语言。微软在研发 C# 语言之初是高薪聘请了这位奇才来主持开发的。


C# 语言是一种安全的、稳定的、简单的、面向对象的编程语言, 它不仅去掉了 C++Java 语言中的一些复杂特性,还提供了可视化工具,能够高效地编写程序。


C# 语言具备如下 4 个特点:

  1. 简单、安全 在 C++C 语言中程序员最头疼的问题就是指针问题,在 C# 语言中已经不再使用指针,而且不允许直接读取内存等不安全的操作。

它比 CC++Java 提供了更多的数据类型,并且每个数据类型都是固定大小的

此外还提供了命名空间来管理 C# 文件,命名空间 相当于一个文件夹,在创建程序时,允许在一个命名空间中创建一个或多个类,方便调用和重用。


  1. 面向对象

与其他面向对象语言一样, C# 语言也具有面向对象语言的基本特征,即封装继承多态


封装:就是将代码看作一个整体,例如使用类、方法、接口等。在使用定义好的类、 方法、接口等对象时不必考虑其细节,只需要知道其对象名以及所需要的参数即可,也是一种提升代码安全性的方法。


继承:是一种体现代码重用性的特性,减少代码的冗余,但在 C# 语言中仅支持单继承。


多态:不仅体现了代码的重用性,也体现了代码的灵活性,它主要通过继承和实现接口的方式,让类或接口中的成员表现出不同的作用。


  1. 支持跨平台

最早的 C# 语言仅能在 Windows 平台上开发并使用,目前最新的 C# 9.0 版本结合 .Net Core 已经能在多个操作系统上使用,真正实现了跨平台。


  1. 开发多种类型的程序

使用 C# 语言不仅能开发在控制台下运行的应用程序,也能开发 Windows 窗体应用程序、网站、手机应用等多种应用程序.


C# 与 . NET 的关系

. NET 是一个开发平台,而 C# 是一种在 .NET 开发平台上使用的编程语言,目前能在 .NET 平台上使用的开发语言很多,例如 Visual Basic .NETPythonJ#Visual C++.NET 等。但在 .NET 平台上使用最多的是 C# 语言。


. NET 框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境。

. NET 框架的目的是便于开发人员容易地建立 Web 应用程序和 Web 服务,使得 Internet 上的各应用程序之间可以使用 Web 服务进行沟通。

目录
相关文章
|
机器学习/深度学习 人工智能 Cloud Native
云原生场景中的 AI任务调度
PAI平台参加“周二开源日”活动,本期分享核心内容摘要 一、AI任务的需求与DLC 二、KubeDL 三、KubeDLPro 四、总结
1623 0
云原生场景中的 AI任务调度
|
5月前
|
自然语言处理 搜索推荐 PHP
分享114个PHP源码,总有一款适合您
分享114个PHP源码,总有一款适合您
35 1
|
5月前
|
Java 程序员 调度
JAVA 并发编程 进程、线程、协程
程序是静态的,程序运行后变为一个进程,一个进程内部可以有多个线程同时执行。进程是所有线程的集合,每一个线程是进程中的一条执行路径
Avalonia使用默认弹窗
Avalonia使用默认弹窗
177 0
Avalonia使用默认弹窗
|
Python Windows
Pycharm最新激活教程(亲测有效!) 1
Pycharm最新激活教程(亲测有效!)
|
文字识别 自然语言处理 Ubuntu
跨平台工具集JamTools:支持截屏、录屏、文字识别、翻译、传输等
一个跨平台的小工具集类软件,支持Windows7/8/10/11、Macos、ubuntu系统(其他系统可以直接从源码编译打包)。包含了(滚动/区域)截屏、录屏、文字识别、多种语言互译、多媒体格式转换、鼠标键盘动作录制播放、局域网文件传输、聊天机器人等功能
2850 0
|
JSON 前端开发 JavaScript
腾讯位置 - 服务端IP定位(结尾附视频)
腾讯位置 - 服务端IP定位(结尾附视频)
198 0
ENVI_IDL: 文本文件的读取(主要是txt、csv文件)
ENVI_IDL: 文本文件的读取(主要是txt、csv文件)
408 0
|
缓存 Oracle 关系型数据库
Oracle中控制commit的三个参数 commit_write, commit_logging和 commit_wait
Oracle中控制commit的动作有三个参数 commit_write, commit_logging和 commit_wait,按重要性分别说明如下
258 0
|
XML 数据库 网络虚拟化
Android8.1 MTK平台 SystemUI源码分析之 网络信号栏显示刷新(上)
Android8.1 MTK平台 SystemUI源码分析之 网络信号栏显示刷新
295 0