C#面向对象(基础知识)

面向对象:就是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说的是自己所在的类;

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

时间: 2024-12-31 18:31:23

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

Python 面向对象基础知识

面向对象基础知识 1.什么是面向对象编程? - 以前使用函数 - 类 + 对象 2.什么是类什么是对象,又有什么关系? class 类: def 函数1(): pass def 函数2(): pass # obj是对象,实例化的过程 obj = 类() obj.函数1() ========== 面向对象不好 ============ ========== 函数编程好 ============== - 有时候,函数编程能实现?比较麻烦. - 面向对象非常的简单就能实现. 3.什么时候适用面向对象?

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

                                                                                    OOP 基础知识汇总(一) >>>你需要了解以下概念面向对象&面向过程概念:  面向过程:专注于解决一个问题的过程.面向过程的最大特点,是由一个一个的函数去解决处理这个问题的一系列过程.  面向对象:专注于由哪个对象来处理一个问题.面向对象的最大特点,是有一个个具有属性和功能的类,从类中拿到对象,进而处理问题. [

《大话设计模式》笔记-基础知识2:面向对象基础知识

本书作者介绍每一种设计模式就是用类图(用的UML类图,其基础知识另文介绍)+面向对象语言小程序+人物对话解释知识点.本文就是介绍<大话设计模式>中所用到面向对象的基础知识(基于C#语言),方便阅读本书代码. 类与实例 (1)对象 一切事物皆为对象,对象就是看到.感觉到.听到.摸到等实实在在的东西.准确地说,对象是一个自包含的实体,用一组可识别的特性和行为来标识.面向对象编程,就是针对对象来进行编程的. (2)类 类就是具有相同的属性和功能的对象的抽象的集合.例子如下 "class&q

面向对象基础知识

面向对象(Object Oriented,OO)是软件开发方法.面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统.交互式界面.应用结构.应用平台.分布式系统.网络管理结构.CAD技术.人工智能等领域.面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物. 面向对象要素 ⑴抽象. 抽象是指强调实体的本质.内在的属性.在系统开发中,抽象指的是在决定如何实现对象之前的对象的意义和行为.使用抽象可以尽可能避免过早考虑一些细节. 类实现了对象的数据(即状态)和

java面向对象基础知识

一.面向对象与面向过程的区别: ①所处的角色不同:前者指挥者,后者执行者:②所需知道的事情不同:前者知道哪些是做这些事情的人就可以,不需了解具体的事情操作的过程.后者需要具备应有的技能来做这些事情. 二.面向对象的基本操作过程 指挥者采用面向对象思想,通过创建类,来创建统一的属性值[成员属性]和(做事的)方法[成员方法]. 通过创建的类或者jdk已有的类,来创建具体的对象,属性值明确,方法明确. 举例:创建类 1 package com.oracle.demo02; 2 3 public cla

[麦先生]PHP面向对象基础知识小结

麦先生引言: 伴随着PHP对于面向对象的思想的引入,其执行高效率,代码可塑性,可重用性也促使PHP进入了井喷式发展,对于很多像我这样的初学者而言,如何理解面向对象的思想并灵活运用最为重要; 面向对象的定义:万物皆对象,每一个拥有特定功能和属性的事务都可以成为一个对象,而运用面向对象的思想就是摒弃过去的过程化开发的繁琐和重复,让对象替我们办事情;那么多个拥有相似功能的对象我们可以把他们看成一个大类,称之为类; 面向对象的三大特点:封装,继承,多态; 类的声明方式:class关键字+类名+{};其中

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

OOP技术按照现实世界的特点来管理复杂的事物,把它们抽象为对象,具有自己的状态和行为,通过对消息的反应来完成一定的任务.这种编程方法提供了非常强大的多样性,大大增加了代码的重用机会,增加了程序开发的速度:同时降低了维护负担,将具备独立性特制的程序代码包装起来,修改部分程序代码时不至于会影响到程序的其他部分. 1.  对象 什么是对象?实际上,现实世界就是由各种对象组成的,如人.汽车.动物.植物等.复杂的对象可以由简单的对象组成.对象都具有各自的属性,如形状.颜色.重量等:对外界都呈现出各自的行为

C++面向对象基础知识

多态是为了接口重用,封装和继承是为了代码重用 子类重新定义父类虚函数的方法叫做继承,不是重载! 一.基本概念 对于C++中经常出现的函数名称相同但是参数列表或者返回值不同的函数,主要存在三种情况: 1.函数重写(override) 函数重载主要实现了父类与子类之间的多态性,子类中定义与父类中名称和参数以及返回值都相同的虚函数. 1)重写的函数不能是static函数,必须是virtual函数,即函数在原始的基类中被声明为虚函数: 2)重写函数与基类函数分在两个类的声明和定义中,这也就导致二者的作用

面向对象基础知识总结

封装的优点 良好的封装能够减少耦合. 类内部的实现可以自由地修改. 类具有清晰的对外接口. 继承 子类拥有父类非private的属性和功能. 子类具有自己的属性和功能(扩展). 子类可以以自己的方式实现父类的功能(重写). 注:C#中子类可以继承父类的方法.域.属性.事件和索引器. 继承的优点 共享代码.避免重复. 使得修改或扩展继承而来的实现都较为容易. 继承的缺点 父类变,子类不得不变. 继承会破坏封装,父类的实现细节会暴露给子类. 多态 子类以父类的身份出现. 子类在工作时以自己的方式来实

PHP面向对象基础知识总结

1.类的变量成员叫做“属性”,或者叫“字段”.“特征”,在本文档统一称为“属性”.2.属性中的变量可以初始化,但是初始化的值必须是常数,这里的常数是指php脚本在编译阶段时就为常数,而不是在编译阶段之后在运行阶段运算出的常数.3.在类的成员方法里面,可以通过$this->property(property是属性名字)这种方式来访问类的属性. 方法,但是要访问类的静态属性或者在静态方法里面却不能使用,而是使用self::$property.4.在类的非静态方法里面可以使用伪变量$this,这个伪变