c#知识集锦
3星 · 超过75%的资源 需积分: 0 170 浏览量
更新于2011-11-10
收藏 20KB DOC 举报
### 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#语言。
木水云
- 粉丝: 12
- 资源: 22
最新资源
- 员工培训需求调查问卷.doc
- 如何确定针对性的培训需求.doc
- 素质能力培训需求分析模型.doc
- 怎样进行有效的培训需求分析(doc 9).doc
- 制造业各工位培训需求.doc
- 做好培训需求分析,奠定企业员工培训的基础(DOC 8页).doc
- SQLSERVER2005卸载方法word文档doc格式最新版本
- MicrosoftSQLServer2008安装和数据库实例创建操作手册doc版冯冰最新版本
- 西电微机原理实验PDF
- P6ProfessionalSetup R24.12 安装包
- MicrosoftSQLServer2008数据库安装图解集合[特别整理版]最新版本
- 含光伏的储能选址定容模型 14节点 程序采用改进粒子群算法,对分析14节点配网系统中的储能选址定容方案,并得到储能的出力情况,有相关参考资料 这段程序是一个粒子群算法(Particle Swarm O
- PROGPPCNEXUS读写烧录刷写软件 飞思卡尔MPC55xx 56xx 57xx 58xx 没有次数限制
- 01_python_基本语法_纯图版.pdf
- 考虑新能源消纳的火电机组深度调峰策略 摘要:本代码主要做的是考虑新能源消纳的火电机组深度调峰策略,以常规调峰、不投油深度调峰、投油深度调峰三个阶段,建立了火电机组深度调峰成本模型,并以风电全额消纳为前
- EV3100电梯专用变频器源代码