3、面向对象以及winform的简单运用(类的初步认识)
什么是类?
“类”是面向对象编程的基本单元,一个类一般包含两种成员:字段和方法——即变量和函数。
例:
//字段或变量的定义
public int age;
//方法或函数的定义
public int Add(int a ,int b)
{
//函数语句
return 表达式;
}
什么是构造函数?
类的构造函数在以类为模板创建对象时被自动调用。
类的构造函数与类名相同,但没有返回值,相当于重新给类一个初始化的方法。
例:
class A
{
//类A的构造函数
public A()
{
//构造函数的内容,在winform中一般先写初始化整个form的函数,然后再写其他需要初始化的内容
}
}
难点:引用类型与值类型
值类型的变量一定义之后就马上可用,比如int i,变量就可以使用。
而引用类型的变量定义之后,还必须用new关键字创建对象后才可以使用。也就是”对象“所用的类型。
在面向对象中,有一个非常难理解的问题:两个对象变量的相互赋值意味着什么?
我们知道,引用类型是在托管堆中分配的,所以,如果对两个对象变量相互赋值,实际上相当于它们指向了同一个对象。
例:
//当每次new一个对象时,都会是一个新对象:
A a1 = new A();
A a2 = new A();
Console.WriteLine(a1==a2);//输出结果为false
//而当令这两者相互赋值时,它们便指向了同一对象
a1 = a2;
Console.WriteLine(a1==a2);//输出结果为true
但,如果是一个值类型的变量,它们对比的是变量的内容,而不是指向的对象,因为它的内存区域为线程堆栈(了解)。
类成员的访问权限
主要分为protect/private/public三大类。
private:只能被自身的实例方法所使用。
protect:是属于受保护的,外界类不能对其访问,但其子类可以访问。
public:公有的,外部皆可访问。
3、面向对象以及winform的简单运用(类的初步认识)的更多相关文章
- 1、面向对象以及winform的简单运用(开篇)
面向对象概述: 要学习好面向对象,我们应该从三个问题入手: 1.什么是面向对象? 2.为什么要面向对象? 3.该怎么面向对象? 面向对象,首先要有一个对象,那么对象是什么呢? 对象的定义是人们要进行研 ...
- 6、面向对象以及winform的简单运用(抽象基类与接口)
抽象类与抽象方法 1.书写规范: 在类前面加上abstract关键字,就成为了抽象类:在一个方法前面加上abstract关键字,就成为了抽象方法(抽象方法不能有实现方法,直接在后面加分号) 例: ab ...
- 8、面向对象以及winform的简单运用(事件与winform入门)
事件 Visual studio中对可视化窗体控件的事件处理机理: 所有的.NET Framework可视化窗体控件的预定义事件,都会某一对应的“事件名+Handler”委托类型的变量.与此事件相关的 ...
- 2、面向对象以及winform的简单运用(面向对象的四大基本特性)
面向对象的四大基本特性 面向对象的核心概念就是封装.抽象.继承.多态这四大基本特性,在这里先解释一下它们的定义: 封装:是一种隐藏信息的特性.找到变化并且把它封装起来,你就可以在不影响其它部分的情况下 ...
- 10、面向对象以及winform的简单运用(isMdicontainer的设置、timer控件进行倒计时的制作)
IsMdicontainer的设置 这是对于整个窗体的设置,将一个窗体的IsMdicontainer设置为true之后,再打开新窗体便可以让新窗体被父容器包括在内. 操作方法: 1)先建立一个子窗体C ...
- 7、面向对象以及winform的简单运用(委托)
委托 1.概念: 委托可以看成是一个函数的“容器”,将某一具体的函数“装入”后,就可以把它当成函数一样使用.委托变量可看成是一种类型安全的函数指针,它只能接收符合其要求的函数地址. 2.定义方法:de ...
- 5、面向对象以及winform的简单运用(方法重载、隐藏、重写与虚方法)
方法的重载: 规定一个方法可以具有不同的实现,但方法的名称是相同的.如: //同样是Man这个方法 public int Man(int age,int name) { …… } //重载 publi ...
- 4、面向对象以及winform的简单运用(继承与多态、命名空间与类库)
继承 继承既子类与父类之间的关系.子类是父类的一种特例,子类拥有父类所没有的功能. 子类与父类之间的相互赋值——例: Parent p; Son c = new Son(); p = c; //正确, ...
- 9、面向对象以及winform的简单运用(输入输出流、图像的上传和读取)
一.输入输出流 1.概念: 输入输出流主要用于保存.读取文件,其内容保存在内存中. 2.使用方法: using System.IO; //System.IO 命名空间包含允许读写文件和数据流的类型以及 ...
随机推荐
- confluence wiki搭建使用
1.准备工作 服务器环境:centos6.6x64 IP:172.16.0.203 1)软件包,地址下载 http://pan.baidu.com/s/1ntlBCQP ,把几个 软件包放在服务器上 ...
- Half Wavelength Dipole Antenna
Reference : 1. wikipedia The dipole antenna is the simplest and most widely used class of antenna.It ...
- 解决WordPress后台安装主题、插件图片不显示的问题
今天搭建wordpress发现现在主题的时候预览图片都没有了,于是搜索了一下,发现下面的这个方法确实管用,于是转载收藏. 有在WordPress后台安装主题.插件的小伙伴可能会遇到主题.插件图片不显示 ...
- Python天猫淘宝评论爬虫
说明 由于Github 打包的exe某些文件上传被.gitignore了,所以不提供windows二进制包 https://github.com/hunterhug/taobaocomment 一个抓 ...
- Android代码规范----按钮单击事件的四种写法
[前言] 按钮少的时候用第三种的匿名内部类会比较快,比如写demo测试的时候或者登陆界面之类. 按钮多的时候一般选择第四种写法. 一.第一种写法:在XML文件中声明onClick属性(很少用) 在XM ...
- 为Unity项目生成文档(一)
VS生成chm帮助文档 VS代码中使用Xml注释,并通过Sandcastle生成chm文档的文章,这几篇值得分享: 使用.NET中的XML注释(一) -- XML注释标签讲解 使用.NET中的XML注 ...
- 三维世界的Gizmos
Unity和Maya 今天在美术同事那儿了解些Maya常识,加上自己在Unity3D中的一点儿小操作,记录一下Gizmos 之前就知道Maya和Unity3D的轴向是一致的,在同事那儿看他操作Maya ...
- JQuery demo
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title> ...
- iOS单例模式(Singleton)写法简析
单例模式的意思就是只有一个实例.单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例.这个类称为单例类. 1.单例模式的要点: 显然单例模式的要点有三个:一是某个类只能有一个实例: ...
- Entity Framework4.0 (一)概述(EF4 的Database First方法)
转自:http://www.cnblogs.com/marksun/archive/2011/12/15/2289582.html Entity Framework4.0(以后简称:EF4),是Mic ...