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 命名空间包含允许读写文件和数据流的类型以及 ...
随机推荐
- Ubuntu 安装JDK并配置成为默认的JDK
Ubuntu安装JDK 系统版本:Ubuntu 15.04 x64 JDK版本:jdk-8u60-linux-x64 1.查看系统位数,输入以下命令即可 getconf LONG_BIT 2.下载对应 ...
- c# 参数传递
c#类型有值类型与引用类型. 无论哪种类型的变量,作为方法的参数进行传递时,默认是以"值传递"方式来传递的. 传递给方法的形参,在执行时都会新创建一个局部变量,然后接受实参的值, ...
- 免费的无次数限制的各类API接口(2)
之前整理过一些聚合数据上的免费API(各类免费的API接口分享,无限次),这次还有一些其他的进行了整理,主要是聚合数据上和API Store上的一些,还有一些其他的. 聚合数据提供30大类,160种以 ...
- Linux 系统常用命令汇总(六) 文件打包与压缩
文件打包与压缩 命令 选项 注解 示例 compress 文件名 压缩指定的文件,压缩后的格式为*.z compress install.log -d 解压被压缩的文件 .z为后缀的文件:compr ...
- codeforces gym-101078
题目链接: http://codeforces.com/gym/101078 A: #include <iostream> #include <cstdio> #include ...
- UESTC 882 冬马党 --状压DP
定义:dp[i][j]为状态为j时,第i行符合条件的状态数 转移方程:dp[i][j] += dp[i-1][t] //t为上一行状态,与当前行不冲突. 从第一行开始向下枚举,每次枚举当前行的状态 ...
- UVALive 6092 Catching Shade in Flatland --枚举+几何计算
题意:x=[-200,200],y=[-200,200]的平面,一天中太阳从不同角度射到长椅(原点(0,0))上,有一些树(用圆表示),问哪个时刻(分钟为单位)太阳光线与这些圆所交的弦长总和最长.太阳 ...
- UESTC 1227 & POJ 3667 Hotel
非常细腻的线段树题目啊,后来还是有个细节写错了,查了一个晚上..就不分析了. 代码: #include <iostream> #include <cstdio> #includ ...
- Android代码优化----Application节点的模板写法及UI工具类
一. MyApplication类的编写: 新建一个类MyApplication,继承自Application.代码如下: MyApplication.java: package com.smyhva ...
- Android配置----小米手机通过wifi连接ADB调试Android应用
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...