C#是一门面向对象的语言,所谓面向对象的语言就是通过面向对象的思想解决问题
面向对象思想:当我们需要解决一个问题时,首先找到一个具备解决该问题功能的对象(实例,即一个具体存在的事物),让它调用自身的功能帮我们解决这个问题。
* 案例1:
* 洗衣服 -》找到一台洗衣机 ->把衣服和洗衣剂给它,它自身具备洗衣服的功能
* 案例2:
* 打电话 -》找到一台手机 -》输入电话号码,手机具备播出电话的功能类是一系列相似事物的抽象,对象是其中一个具体的事物
类是引用类型,也是一种自定义类型
样式:
* class 类名
* {
* 字段成员
* 函数成员
* }当类中不存在任何显式声明的实例构造函数时,系统会默认为其提供公有无参实例构造函数。
若存在其他实例构造函数,系统将不会再默认提供,若还想操作无参实例构造函数,则需要自己显式声明。
类中的实例字段在构造函数中不要求必须要赋值。
实例构造函数用来创建对象并对其初始化
class Person
{
//类中的实例字段可以初始化
string name = "lily";
//系统会对类中未初始化的实例字段进行默认初始化,初始值为类型默认值
int age;
//无参公有实例构造函数
public Person() { }
//带参公有实例构造函数
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
public void ShowInfo()
{
Console.WriteLine("姓名:{0} 年龄:{1}", name, age);
}
}
class Program
{
static void Main(string[] args)
{
//声明引用变量
Person person = null;
//当引用变量为空时,不可以访问调用实例成员,会导致崩溃
//person.ShowInfo();
//创建对象
person = new Person();
person.ShowInfo();
//更换person的指向,指向一个新的对象
person = new Person("Coco", 17);
person.ShowInfo();
//使用引用变量给另一个引用变量赋值,两个引用变量指向同一个对象
Person person00 = person;
Console.ReadKey();
}
}