3、面向对象以及winform的简单运用(类的初步认识)

什么是类?

“类”是面向对象编程的基本单元,一个类一般包含两种成员:字段和方法——即变量和函数。

例:

//字段或变量的定义
public int age;
//方法或函数的定义
public int Add(int a ,int b)
{
  //函数语句
  return 表达式;
}

什么是构造函数?

类的构造函数在以类为模板创建对象时被自动调用。
类的构造函数与类名相同,但没有返回值,相当于重新给类一个初始化的方法。

例:

class A
{
  //类A的构造函数
  public A()
  {
    //构造函数的内容,在winform中一般先写初始化整个form的函数,然后再写其他需要初始化的内容
  }
}

难点:引用类型与值类型

值类型的变量一定义之后就马上可用,比如int i,变量就可以使用。

而引用类型的变量定义之后,还必须用new关键字创建对象后才可以使用。也就是”对象“所用的类型。

在面向对象中,有一个非常难理解的问题:两个对象变量的相互赋值意味着什么?

我们知道,引用类型是在托管堆中分配的,所以,如果对两个对象变量相互赋值,实际上相当于它们指向了同一个对象。

例:

1 //当每次new一个对象时,都会是一个新对象:
2 A a1 = new A();
3 A a2 = new A();
4 Console.WriteLine(a1==a2);//输出结果为false
5 //而当令这两者相互赋值时,它们便指向了同一对象
6 a1 == a2;
7 Console.WriteLine(a1==a2);//输出结果为true

但,如果是一个值类型的变量,它们对比的是变量的内容,而不是指向的对象,因为它的内存区域为线程堆栈(了解)。

类成员的访问权限

主要分为protect/private/public三大类。

private:只能被自身的实例方法所使用。

protect:是属于受保护的,外界类不能对其访问,但其子类可以访问。

public:公有的,外部皆可访问。

时间: 2024-10-13 03:26:21

3、面向对象以及winform的简单运用(类的初步认识)的相关文章

1、面向对象以及winform的简单运用(开篇)

面向对象概述: 要学习好面向对象,我们应该从三个问题入手: 1.什么是面向对象? 2.为什么要面向对象? 3.该怎么面向对象? 面向对象,首先要有一个对象,那么对象是什么呢? 对象的定义是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则.计划或事件. 因此面向对象这个对象,指的是客体.所谓客体是指客观存在的对象实体和主观抽象的概念.(摘自@赵学智<什么是对象?为什么要面向对象?该怎么面向对象>) 由此可见,对象就是一个客体,很多人认

6、面向对象以及winform的简单运用(抽象基类与接口)

抽象类与抽象方法 1.书写规范: 在类前面加上abstract关键字,就成为了抽象类:在一个方法前面加上abstract关键字,就成为了抽象方法(抽象方法不能有实现方法,直接在后面加分号) 例: abstract class Chouxiang //抽象类 { public abstract void fangfa(); //抽象方法 } 2.抽象类的注意事项: 1)当一个类变为抽象类之后就不能作为对象来使用了,无法new出来 2)抽象方法必须放在抽象类里面(但抽象类中不一定有抽象方法) 3)没

8、面向对象以及winform的简单运用(事件与winform入门)

事件 Visual studio中对可视化窗体控件的事件处理机理: 所有的.NET Framework可视化窗体控件的预定义事件,都会某一对应的“事件名+Handler”委托类型的变量.与此事件相关的信息都封装在“事件名+Args”类型的事件参数中,此事件参数有一个基类EventArgs,它是所有事件参数的基类. winform入门 掌握winform要从三个方面入手:1.form,即窗体 2.控件 3.事件的触发. 1.form: 窗体是winform必不可少的元素,在应用程序的主入口点Pro

2、面向对象以及winform的简单运用(面向对象的四大基本特性)

面向对象的四大基本特性 面向对象的核心概念就是封装.抽象.继承.多态这四大基本特性,在这里先解释一下它们的定义: 封装:是一种隐藏信息的特性.找到变化并且把它封装起来,你就可以在不影响其它部分的情况下修改或扩展被封装的变化部分,这是所有设计模式的基础,就是封装变化,因此封装的作用,就解决了程序的可扩展性. 抽象:在使用面向对象的方法设计一个软件系统时,首先就要区分出现实世界中的事物所述的类型,分析它们拥有哪些性质与功能,再将它们抽象为在计算机虚拟世界中才有意义的实体——类,在程序运行时,由类创建

7、面向对象以及winform的简单运用(委托)

委托 1.概念: 委托可以看成是一个函数的“容器”,将某一具体的函数“装入”后,就可以把它当成函数一样使用.委托变量可看成是一种类型安全的函数指针,它只能接收符合其要求的函数地址. 2.定义方法:delegate关键字.例: public delegate int MyDele(int a, int b); 3.利用委托调用函数 1)首先定义一个类,里面写几个方法: class Class1 { public int Jiafa(int a, int b) { return a + b; } p

4、面向对象以及winform的简单运用(继承与多态、命名空间与类库)

继承 继承既子类与父类之间的关系.子类是父类的一种特例,子类拥有父类所没有的功能. 子类与父类之间的相互赋值——例: Parent p; Son c = new Son(); p = c; //正确,子类对象可以传给父类变量 c = p; //错误,父类对象变量不可以直接赋值给子类变量 如果确信父类变量中所引用的对象的确是子类类型,则可以通过类型强制转换进行赋值,这种方法便是多态.例: c = (Child)p; //或 c = p a Child; 命名空间与类库 命名空间(namespace

5、面向对象以及winform的简单运用(方法重载、隐藏、重写与虚方法)

方法的重载: 规定一个方法可以具有不同的实现,但方法的名称是相同的.如: //同样是Man这个方法 public int Man(int age,int name) { …… } //重载 public int Man(int age) { …… } 重载的存在可以在主函数调用类的时候,根据对象所需灵活调用,是一种经常会使用到的方法. 方法的隐藏: 当子类与父类拥有完全一样的方法时,便隐藏了父类的同名方法. 如果是有意隐藏,应该在相同的方法中写上new关键字,如: class Parent {

10、面向对象以及winform的简单运用(isMdicontainer的设置、timer控件进行倒计时的制作)

IsMdicontainer的设置 这是对于整个窗体的设置,将一个窗体的IsMdicontainer设置为true之后,再打开新窗体便可以让新窗体被父容器包括在内. 操作方法: 1)先建立一个子窗体Child.cs 2)在父容器的按钮里写代码,打开子窗体 Child c = new Child(); //判断窗体是否已经打开,以控制其只能打开一个 int count = 0; foreach (Form f in this.MdiChildren) { if (f.Name == c.Name)

9、面向对象以及winform的简单运用(输入输出流、图像的上传和读取)

一.输入输出流 1.概念: 输入输出流主要用于保存.读取文件,其内容保存在内存中. 2.使用方法: using System.IO; //System.IO 命名空间包含允许读写文件和数据流的类型以及提供基本文件和目录支持的类型. 3.代码段实现读取和保存功能: 读取文字: OpenFileDialog op = new OpenFileDialog(); op.ShowDialog();//打开文件对话框 //将选择的东西读取到文档里 StreamReader sd = new StreamR