面向对象:就是CLASS,class就是用户自定义类型;

class:用户自定义引用类型;
三大特点:封装、继承、多态;

解决方案中右键添加class;
class内可以写结构体,枚举,函数;

C#中各个形状的含义

属性----------小扳手
成员变量------长方体
方法(函数)--立方体

封装:---属性
成员变量;对象;
public修饰符--可以跨类访问;

Main函数中Static不属于任何类,所以必须调用类;

方法的重载:
一个函数有多重的含义;
名称相同,参数不同时;
Ctrl+Shift+空格

类的静态成员:(Static)
就是不需要初始化
Static就是静态的意思;
在通过对象不走;直接通过“类”走;
讲义中:for循环中区分下区别的

命名空间:
namespace 名字----命名空间;
using就是应用的意思;
类库:

构造函数:
每一个类都默认有一个同名的无参数无返回值的构造函数;
造对象的过程,new初始化,实际就是调用类的构造函数的过程;
例子:public 名字(){}这就是默认的无参无返回值构造函数;
构造函数也是可以重载的;

四个修饰符:
public:可以跨命名空间使用,需要引用命名空间名;
private:私有的,只能在自己当前类访问;
protected:受保护的,能够跨类,在自己的子类可以访问;
internal(内部的,默认的)当前命名空间使用;

继承:类与类之间的关系(父子关系)
子类继承父类,那么子类就拥有父类的公共属性和方法;
一个子类只能继承一个父类,一个父类可以有多个子类;
子类对象可以直接转成父类,但父类只能“转回”对应的子类;
如果子类转成父类之后,父类对象就不能有子类的属性和方法;

继承的是公共的类;

引用类型和值类型的区别:
赋值时:
int a = 1;
int b = a;//a与b是两个完全不同的

Class1 dataa = new Class1();
Class1 datab = new Class1();//完全不同的

Class1 data1 = new Class1();
Class1 data2 = data1;//data2只是data1的一个快捷方式;是相同的;

class Tiger:Animal(继承关系表达)
{

}
继承的重载:
子类继承父类的方法,同名不同参时就可出现重载;
如果与父类同名同参时:子类只调用自己的方法;
还有一个虚方法(在其他班视频的6中最后几分钟),在子类转换成父类型后,仍然调用的是子类的方法;

多态:有了继承,才有多态。子类的多样化。

抽象基类与接口:就是子类必须继承父类的属性或方法;
抽象类不能造对象;无法直接在Main函数中new初始化使用;只有通过子类来使用;
就是加上abstract在class前

抽象方法和属性必须写在抽象类内;
抽象方法直接“;”结束,里面不写内容,通过子类必须写
override来实现;

抽象属性:
public abstract string 名字
{
get;
set;
}

接口:(相当于子类的师傅,一个子类可以有多个接口)
public interface xixing
{
void quyu();
}
以上就是一个xixing接口,里面有个函数quyu();

子类与接口连接后,也必须使用此接口内的函数;

winform:

partial分割;
所有控件都是类;
所有属性就是封装;
this说的是自己所在的类;

委托在类的外面;
委托变量的加法和减法:
委托变量的加法:当两个委托变量相加后,会先后执行,
最后返回后一个委托变量的值;
委托变量的减法:执行减号前面的委托变量,减号后面的的委托变量就不执行了;

class Tiger:Animal(继承关系表达)
{

}
继承的重载:
子类继承父类的方法,同名不同参时就可出现重载;
如果与父类同名同参时:子类只调用自己的方法;
还有一个虚方法(在其他班视频的6中最后几分钟),在子类转换成父类型后,仍然调用的是子类的方法;

多态:有了继承,才有多态。子类的多样化。

抽象基类与接口:就是子类必须继承父类的属性或方法;
抽象类不能造对象;无法直接在Main函数中new初始化使用;只有通过子类来使用;
就是加上abstract在class前

抽象方法和属性必须写在抽象类内;
抽象方法直接“;”结束,里面不写内容,通过子类必须写
override来实现;

抽象属性:
public abstract string 名字
{
get;
set;
}

接口:(相当于子类的师傅,一个子类可以有多个接口)
public interface xixing
{
void quyu();
}
以上就是一个xixing接口,里面有个函数quyu();

子类与接口连接后,也必须使用此接口内的函数;

1110:
winform:
partial分割;
所有控件都是类;
所有属性就是封装;
this说的是自己所在的类;

委托在类的外面;
委托变量的加法和减法:
委托变量的加法:当两个委托变量相加后,会先后执行,
最后返回后一个委托变量的值;
委托变量的减法:执行减号前面的委托变量,减号后面的的委托变量就不执行了;

C#面向对象(基础知识)的更多相关文章

  1. Python 面向对象基础知识

    面向对象基础知识 1.什么是面向对象编程? - 以前使用函数 - 类 + 对象 2.什么是类什么是对象,又有什么关系? class 类: def 函数1(): pass def 函数2(): pass ...

  2. PHP中oop面向对象基础知识(一)

                                                                                        OOP 基础知识汇总(一) &g ...

  3. c#中的面向对象基础知识总结

    面向对象 1.面向过程----->面向对象 1.  面向过程:面向的是完成这件事儿的过程,强调的是完成这件事儿的动作. 面向对象:意在写出一个通用的代码,屏蔽差异. 我们在代码中描述一个对象,通 ...

  4. Python面向对象基础知识

    面向对象是一种编程方式,此编程方式的实现是基于对类和对象的使用 类是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例(即:对象),实例用于调用 ...

  5. python 1 面向对象基础知识

    1.编码范式 编程  是程序员用特定的 语法+数据结构+算法 组成的代码来告诉计算机如何执行任务的过程 如果把编程比作习武,编程方式就是武林中的各种流派,而在编程的世界里面最常见的两大流派是:面向过程 ...

  6. TypeScript 面向对象基础知识

    孙广东  2016.4.5 JavaScript如今到处都是.web.server(通过NodeJS).移动应用(通过各种框架).全部这些,TypeScript都能够使用,而且能够为JavaScrip ...

  7. c#面向对象 基础知识(转)

    OOP技术按照现实世界的特点来管理复杂的事物,把它们抽象为对象,具有自己的状态和行为,通过对消息的反应来完成一定的任务.这种编程方法提供了非常强大的多样性,大大增加了代码的重用机会,增加了程序开发的速 ...

  8. java面向对象基础知识

    一.面向对象与面向过程的区别: ①所处的角色不同:前者指挥者,后者执行者:②所需知道的事情不同:前者知道哪些是做这些事情的人就可以,不需了解具体的事情操作的过程.后者需要具备应有的技能来做这些事情. ...

  9. Java面向对象基础知识汇总

    OOP:Orient Object Programe AOP:Aspect Orient Programe 封装:Encapsulation 继承:Inheritance 多态:Polymorphmi ...

  10. C++面向对象基础知识

    多态是为了接口重用,封装和继承是为了代码重用 子类重新定义父类虚函数的方法叫做继承,不是重载! 一.基本概念 对于C++中经常出现的函数名称相同但是参数列表或者返回值不同的函数,主要存在三种情况: 1 ...

随机推荐

  1. share.js一键分享到微博、QQ空间、QQ好友、微信、腾讯微博、豆瓣、Facebook、Twitter、Linkedin、Google+、点点等

    官网上面 https://github.com/overtrue/share.js非常详细的介绍了share.js他的使用 使用方式有:第一:使用 npm npm install social-sha ...

  2. linux command ------ find

    find | grep luoluo 将当前目录及子目录的文件名中含有luoluo的文件过滤出来 | 是管道,把find查找的内容传递给下个命令(grep) find后面不加其他内容(比如路径)表示打 ...

  3. kali linux 启动无法自动连接网络问题i

    kali 有一个很大的问题:无法自动连接网咯. 而且,按照网上的方法修改/etc/Network-manager/Network*.conf和/etc/network/interfaces也没有效果. ...

  4. 5G时代的到来,会给生活带来什么改变?

    本文首发于:风云社区. 据百度百科介绍,5G网络是第五代移动通信网络,其峰值理论传输速度可达每秒数十Gb,比4G网络的传输速度快数百倍.举例来说,整部超高画质电影可在1秒之内下载完成.   5G网络已 ...

  5. 【Python】统计个人新浪微博词频并给出相应的柱状图

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  6. 面向对象【day08】:反射(五)

    本节内容 概述 反射函数 综合使用 一.概述 反射我们以后会经常用到,这个东西实现了动态的装配,通过字符串来反射类中的属性和方法 二.反射函数 2.1 hasarttr(obj,name_str) 作 ...

  7. Hi3519v101-uboot-start.S分析

    00032: #include <config.h>00033: #include <version.h> 1)#include <config.h>.config ...

  8. JAVA记录-redis缓存机制介绍(一)

    1.redis介绍 Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Re ...

  9. ruby where用法

    用法1 Subject.where(").order("name") 用法2 与find方法不同的是,where方法返回的结果不是数组而是ActiveRelation,这 ...

  10. jquery ajax 跨域请求【原】

    前台 function sending(){ $.ajax({ type : "get",//jsonp只能get async:true, url : "/webcont ...