C#基础总结之七面向对象知识点总结1
class Class //定义一个类 名字是Class { const int RETIREMENT = 65; string NAME; string deptName; int age = 28; //如果是常量 只能获取,不能赋值 public string NameS //没有get和set方法 ,就不能获取及赋值 { get; set; } private string name; //私有 public string Name //私有,,定义公共属性 { get { return this.name; } set //可以在set中添加条件,控制赋值的内容 { this.name = value; } } //Class c1=new Class(); //实例化这个类 //c1.Name="zhangdan"; //set 赋值 //string cName= c1.Name; //获取 get }
//面向对象的三大特征 // 1.封装 // 2.集成 // 3.多态 //访问修饰符 // public 所属类的成员以及非所属类的成员都可以访问(不同程序集下注意引用 using另一程序集) // internal 当前程序集可以访问(同一项目下) // protected 所属类或派生自所属类的类型可以访问 // private 只有所属类的成员才能访问 (当前类下可以被访问,最高级别限制)(字段未私有 如果想要访问 定义公共类型的属性 添加get set方法) //构造函数(类的一种方法,与类同名) //一个类下可以与多个构造函数(参数不同),如果不定义构造函数(默认有一个无参的构造函数) //构造函数名称必须与类相同,调用时(实例时,传递需要的参数) //有参构造函数 //public Student(string name, int age, string hobby) // { // this.Name = name; // this.Age = age; // this.Hobby = hobby; //} //Student student = new Student("xiaoming",12,"kanshu");//调用以上的构造函数 //无参构造函数、 //public Student() // { // this.Name = name; // this.Age = age; // this.Hobby = hobby; // } //Student student = new Student();//调用以上的构造函数 //student.Name=xiaoming; //student.Age=12; //student.Hobby = kanshu; //静态成员 类下 static string id;(可以不用实例化,直接点出来) //静态构造函数 (只执行一次,适合初始化赋值)在程序加载就执行一遍,生命周期到贯穿整个程序。
1、面向对象三大特征:封装、继承、多态 2、封装具体的表现是类,类是将具有相同特征的事物封装在一起, 存储的是一类事物的属性及方法;对象是类的具体实现, 表示的是一个具体的事物; 比如学生可看作是一类事物,包含学生姓名、学生证编号、年龄、专业、班级等等; 而张三是学生类的一个对象,每个具体的对象都包含学生类的 属性和方法;但是每个对象的属性值和方法执行的结果都是不一样的(静态属性及静态方法除外); 3、四种修饰符的访问权限: 1、private:本类中可访问 2、protected:本类及本类的子类中可访问 3、internal:本程序集中可访问 4、public:完全可访问 字段的默认修饰符为private;方法的默认修饰符是internal;顶级类默认修饰符为internal(只能是public或internal); 4、构造函数(方法):public 类名(){} 1、无返回值 2、方法名必须是类名 3、如无构造函数则系统默认一个无参构造函数; 4、可定义多个构造函数(重载:参数类型不同,个数不同,顺序不同) 5、静态属性与静态构造函数(静态构造函数的执行是系统进行控制的) 静态构造函数执行的情况有两种: 1)、实例化一个对象时(创建对象); 2)、调用静态属性时,类名.静态属性 5、属性与字段的定义;字段原则上都是private类型,属性为public类型,属性的定义方式为: 1、方式一: private string name; //字段 public string Name //属性 { get { return this.name; } set { this.name = value; } } 方式二: public string Name { get; set; }
本系列教程:
C#基础总结之八面向对象知识点总结-继承与多态-接口-http://www.cnblogs.com/spring_wang/p/6113531.html
C#基础总结之七面向对象知识点总结1http://www.cnblogs.com/spring_wang/p/6113526.html
C#基础总结之六 DataTable (临时表/数据源) 和Datatable 名片练习http://www.cnblogs.com/spring_wang/p/6113520.html
C#基础总结之五Dictionary<string, string[]>和while循环http://www.cnblogs.com/spring_wang/p/6113514.html
C#基础总结之四List-Hashtable-冒泡排序http://www.cnblogs.com/spring_wang/p/6113504.html
C#基础总结之三循环控制-for-数组-乘法表-arraylisthttp://www.cnblogs.com/spring_wang/p/6113496.html
C#基础总结之二循环控制-运算符http://www.cnblogs.com/spring_wang/p/6113484.html
C#基础总结之一变量常量-if嵌套语句-witch结构-类型转换http://www.cnblogs.com/spring_wang/p/6113476.html
C#基础课程之六(临时表)DataTable使用方法http://www.cnblogs.com/spring_wang/p/6113454.html
C#基础课程之五集合(HashTable,Dictionary)http://www.cnblogs.com/spring_wang/p/6113404.html
C#基础课程之四集合(ArrayList、List<泛型>)http://www.cnblogs.com/spring_wang/p/6113396.html
C#基础课程之三循环语句http://www.cnblogs.com/spring_wang/p/6113383.html
C#基础课程之二变量常量及流程控制http://www.cnblogs.com/spring_wang/p/6113372.html
C#基础课程之一注释和控制台、一些常识http://www.cnblogs.com/spring_wang/p/6113361.html
C#基础第九天-作业答案-储蓄账户(SavingAccount)和信用账户(CreditAccount) http://www.cnblogs.com/spring_wang/p/6113291.html
C#基础第九天-作业-储蓄账户(SavingAccount)和信用账户(CreditAccount) http://www.cnblogs.com/spring_wang/p/6113285.html
C#基础第八天-作业答案-设计类-面向对象方式实现两个帐户之间转账http://www.cnblogs.com/spring_wang/p/6113274.html
C#基础第八天-作业-设计类-面向对象方式实现两个帐户之间转账http://www.cnblogs.com/spring_wang/p/6113258.html
C#基础第七天-作业答案-利用面向对象的思想去实现名片-动态添加http://www.cnblogs.com/spring_wang/p/6113232.html
C#基础第七天-作业-利用面向对象的思想去实现名片-动态添加http://www.cnblogs.com/spring_wang/p/6113224.html
C#基础第六天-作业-利用面向对象的思想去实现名片http://www.cnblogs.com/spring_wang/p/6113028.html
C#基础第六天-作业答案-利用面向对象的思想去实现名片http://www.cnblogs.com/spring_wang/p/6113033.html
C#基础第五天-作业答案-用DataTable制作名片集http://www.cnblogs.com/spring_wang/p/6113022.html
C#基础第五天-作业-用DataTable制作名片集http://www.cnblogs.com/spring_wang/p/6113013.html
C#基础第四天-作业答案-Hashtable-list<KeyValuePair>泛型实现名片http://www.cnblogs.com/spring_wang/p/6113005.html
C#基础第四天-作业-Hashtable-list<KeyValuePair>泛型实现名片http://www.cnblogs.com/spring_wang/p/6113000.html
C#基础第三天-作业答案-集合-冒泡排序-模拟名片http://www.cnblogs.com/spring_wang/p/6112888.html
C#基础第三天-作业-集合-冒泡排序-模拟名片http://www.cnblogs.com/spring_wang/p/6112885.html
C#基础第二天-作业答案-九九乘法表-打印星星http://www.cnblogs.com/spring_wang/p/6112881.html
C#基础第二天-作业-九九乘法表-打印星星http://www.cnblogs.com/spring_wang/p/6112875.html
C#基础第一天-作业答案http://www.cnblogs.com/spring_wang/p/6112872.html
C#基础第一天-作业http://www.cnblogs.com/spring_wang/p/6112867.html
C#-string.Format对C#字符串格式化http://www.cnblogs.com/spring_wang/p/6077098.html
作者: 王春天 出处: http://www.cnblogs.com/spring_wang/ Email: spring_best@yeah.net QQ交流:903639067
QQ群:322581894 关于作者: 大连天翼信息科技有限公司 技术总监。 SNF快速开发平台 创始人。应用平台架构师、IT规划咨询专家、业务流程设计专家。 专注于快速开发平台的开发、代码生成器。同时专注于微软平台项目架构、管理和企业解决方案,多年项目开发与管理经验,精通DotNet系列技术Vue、.NetCore、MVC、Webapi、C#、WinForm等,DB(SqlServer、Oracle等)技术,移动端开发。熟悉Java、VB及PB开发语言。在面向对象、面向服务以及数据库领域有一定的造诣。现从事项目实施、开发、架构等工作。并从事用友软件产品U8、U9、PLM 客开工作。 如有问题或建议,请多多赐教! 本文版权归作者和CNBLOGS博客共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过邮箱或QQ 联系我,非常感谢。