### C#知识集锦 #### 一、C#简介与特点 C#(读作“C sharp”)是由微软公司开发的一种面向对象的编程语言,它结合了C++的强大功能和Visual Basic.NET的简单易用性。C#设计用于简化程序员的工作,并提高代码的安全性和可靠性。自2000年首次发布以来,C#已经成为了.NET Framework和.NET Core框架中的主要语言之一。 #### 二、C#基础知识 ##### 1. 基本数据类型 C#支持多种基本数据类型,包括整型(如`int`、`long`)、浮点型(如`float`、`double`)、布尔型(`bool`)、字符型(`char`)等。例如: ```csharp int age = 30; double height = 1.8; bool isStudent = false; char grade = 'A'; ``` ##### 2. 变量声明与初始化 在C#中,变量声明通常包含类型和变量名,可以立即进行初始化或稍后初始化。 ```csharp int number; // 声明一个整型变量 number = 10; // 初始化 int count = 0; // 声明并初始化 ``` ##### 3. 控制结构 C#提供了多种控制结构来管理程序的流程,包括条件语句(如`if...else`)、循环语句(如`for`、`while`)等。 ```csharp if (score >= 60) { Console.WriteLine("合格!"); } else { Console.WriteLine("不合格!"); } for (int i = 0; i < 5; i++) { Console.WriteLine(i); } ``` ##### 4. 函数与方法 函数是执行特定任务的代码块,可以通过定义方法来实现。方法可以有返回值,也可以没有。 ```csharp public int Add(int a, int b) { return a + b; } ``` #### 三、面向对象编程(OOP)基础 ##### 1. 类与对象 类是具有相似特性和行为的对象的抽象表示。对象是类的具体实例。 ```csharp public class Student { public string Name { get; set; } public int Age { get; set; } public void Study() { Console.WriteLine(Name + "正在学习。"); } } Student student1 = new Student(); student1.Name = "张三"; student1.Age = 20; student1.Study(); // 输出: 张三正在学习。 ``` ##### 2. 继承 继承允许创建一个新类(子类),继承现有类(基类)的所有特性。 ```csharp public class Person { public string Name { get; set; } public void Eat() { Console.WriteLine(Name + "正在吃饭。"); } } public class Teacher : Person { public void Teach() { Console.WriteLine(Name + "正在教学。"); } } Teacher teacher1 = new Teacher(); teacher1.Name = "李四"; teacher1.Eat(); // 输出: 李四正在吃饭。 teacher1.Teach(); // 输出: 李四正在教学。 ``` ##### 3. 多态 多态允许使用相同的接口来表示不同类型的对象。 ```csharp public abstract class Animal { public abstract void MakeSound(); } public class Dog : Animal { public override void MakeSound() { Console.WriteLine("汪汪!"); } } public class Cat : Animal { public override void MakeSound() { Console.WriteLine("喵喵!"); } } Animal animal1 = new Dog(); animal1.MakeSound(); // 输出: 汪汪! Animal animal2 = new Cat(); animal2.MakeSound(); // 输出: 喵喵! ``` #### 四、常用控件及其用法 ##### 1. TextBox控件 TextBox控件用于接收用户输入文本。 ```csharp // 在XAML中声明TextBox <TextBox x:Name="txtInput" Text="请输入文字" HorizontalAlignment="Left" Margin="50,50,0,0" VerticalAlignment="Top" Width="120"/> // 获取TextBox的值 string inputText = txtInput.Text; ``` ##### 2. Button控件 Button控件用于触发事件。 ```csharp // 在XAML中声明Button <Button x:Name="btnClick" Content="点击我" HorizontalAlignment="Left" Margin="50,100,0,0" VerticalAlignment="Top" Width="75" Click="btnClick_Click"/> // 定义Button的Click事件处理程序 private void btnClick_Click(object sender, RoutedEventArgs e) { MessageBox.Show("按钮被点击了!"); } ``` ##### 3. ListBox控件 ListBox控件用于显示列表项。 ```csharp // 在XAML中声明ListBox <ListBox x:Name="lbItems" HorizontalAlignment="Left" Height="91" Margin="50,150,0,0" VerticalAlignment="Top" Width="120"> <ListBoxItem>苹果</ListBoxItem> <ListBoxItem>香蕉</ListBoxItem> <ListBoxItem>橙子</ListBoxItem> </ListBox> // 获取选中的项 string selectedFruit = lbItems.SelectedItem.ToString(); ``` ##### 4. CheckBox控件 CheckBox控件用于表示“是/否”状态。 ```csharp // 在XAML中声明CheckBox <CheckBox x:Name="chkAgree" Content="我同意条款" HorizontalAlignment="Left" Margin="50,250,0,0" VerticalAlignment="Top"/> // 检查是否选中 if (chkAgree.IsChecked == true) { Console.WriteLine("同意了条款。"); } ``` #### 五、属性、方法与事件 ##### 1. 属性 属性提供了一种方便的方式访问类的字段,类似于方法,但更简洁。 ```csharp public class Person { private string _name; public string Name { get { return _name; } set { _name = value; } } } ``` ##### 2. 方法 方法是类中的功能实现,用于执行特定操作。 ```csharp public class Calculator { public int Add(int a, int b) { return a + b; } } ``` ##### 3. 事件 事件用于通知其他对象某件事情的发生。 ```csharp public class EventPublisher { public event EventHandler SomethingHappened; public void TriggerEvent() { if (SomethingHappened != null) { SomethingHappened(this, EventArgs.Empty); } } } public class EventSubscriber { private EventPublisher publisher; public EventSubscriber(EventPublisher pub) { publisher = pub; publisher.SomethingHappened += Publisher_SomethingHappened; } private void Publisher_SomethingHappened(object sender, EventArgs e) { Console.WriteLine("事件被触发了!"); } } ``` 通过以上知识点的总结,我们可以看到C#作为一种强大的现代编程语言,在面向对象编程方面提供了丰富的特性和工具。无论是开发桌面应用、Web应用还是移动应用,C#都是一个非常优秀的选择。掌握这些基础知识和技术要点,将有助于开发者更好地理解和运用C#语言。
- zehan36072011-11-11哥哥 这是上传的什么呀 怎么就几行字呀??
- 粉丝: 12
- 资源: 22
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助