namespace Lesson1_类和对象 { #region 知识回顾 面向对象概念回顾 //万物皆对象 //用程序来抽象(形容)对象 //用面向对象的思路来编程 #endregion #region 知识点一 什么是类 //基本概念 //具有相同特征 //具有相同行为 //一类事务的抽象 //类是对象的模板 //可以通过类创建出对象来 //类的关键词:class #endregion #region 知识点二 类声明在哪里 //一般声明在namespace里声明(还有内部类不在此处 #endregion #region 知识点三 类声明的语法 //命名: //class前可以加访问修饰符,类名不建议使用中文,帕斯卡命名法 //注意:同一个语句块中的不同类 不能重名 class 类名 { //形容一类对象的: //特征-成员变量 //保护特征-成员属性 //构造函数和析构函数 //索引器 //运算符重载 //静态成员 } #endregion #region 知识点四 类声明实例 class Human//用来形容人类的 { } class Machine//用来形容机器的 { } #endregion class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); #region 知识点五 什么是(类)对象 //基本概念 // 类的声明 和 类对象(变量)声明是两个概念 // 类的声明 类似 枚举 和 结构体的声明 类的声明相当于声明了一个自定义变量类型 // 而对象 是类创建出来的 // 相当于声明一个指定类的变量 // 类创建对象的过程一般称为实例化对象 // 类对象 都是引用类型的(还有数组和string #endregion #region 知识点六 实例化对象基本语法 //类名 变量名; //类名 变量名 = null; null代表空 //类名 变量名 = new 类名(); 会调用类的构造函数 #endregion #region 知识点七 实例化对象 Human h;//在栈上开辟一个空间 来 存储 堆空间 的 内存地址 ,但是现在没放所以栈空间内容是空的 Human h2 = null;//和上面一样 Human h3 = new Human();//在栈上开辟一个空间来存储堆空间的内存地址,但堆的内容是空的 Human h4 = new Human();//假如构造函数中有内容,此刻要注意! //虽然和上面一样都是Human()实例化出来的对象,但其中的内容并不共享 //总结: //类对象和类的声明是两个东西 //类的声明是声明对象的模板 用来(抽象)形容实例的 //类对象的声明是 用来表示实际对象个体的 #endregion } } }