C#OOP之一面向对象简介

简介: C#OOP之一面向对象简介

 今天我们开始第一次课,我们本门课的题目叫“C#面向对象程序设计语言”。那么什么是“C#”,什么又是“面向对象”呢?,程序设计语言的概念,我们在ITFC中已经学习过了(程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合;语言:此处指与计算机进行交流的代码、指令)。


      C#外行的人也叫做“C井”,我们采用微软的标准称呼“C Sharp”,意味着“开发利器”。C#语言在语法方面兼顾了Java和C++的特点,在应用方面它吸收了VB、Delphi等的优点。C#的出现使我们在掌握主流面向对象思想的同时,可以快速的开发人事管理系统、酒店管理系统等,可以轻松完成大型商业网站、电子商务应用等。C#语言可以应用在视频、游戏、科学计算、网络软件、移动电话等领域,当然更为重要的是为在最短的时间内创造最大的价值的吸引力,这一切都是我们学习C#的吸引力。


       首先提到“对象”二字,有的朋友可能马上就想到BF、GF了,^.^。在我们程序设计里面“对象”的概念要比BF、GF要宽泛的多的多。那么,在程序设计中,何谓“对象”呢?一言以蔽之:万事万物皆为对象。


       那么,拿我正在使用的这个笔记本来说吧,它就是个“对象”。下面来分析一下这个电脑对象具有的状态和行为吧。

老张的HP笔记本电脑

状态(特征)

行为(动作)

型号:HP6515b

启动

产地:中国

运行程序

重量:2.25kg

关机

按照这个思路,请大家每人想3个对象,并列举出其状态和行为。

思考时间:


提问回答时间:


       刚才有同学提到了对象是:人、电脑、鼠标等,那么人、电脑、鼠标是对象吗?请大家注意老师的案例,对象:老张的HP笔记本电脑,而不是电脑;同理,人不是对象,而胡一刀这个人是对象。那么有思考能力的同学会问,二者有什么联系呢?


       大家考虑一下,胡一刀、周杰杰、李春春这些是不是具体的人呢?而我们说的“人“是上面这些人的什么呢?统称。那么在面向对象里面,我们称这个统称为类。


我们可以把类比做模板(模子),是对象的蓝图。下面是类和对象的区别:

对象

统称

具体的

案例:人、电脑、鼠标

案例:胡一刀、老张的HP笔记本电脑

不占内存空间

占用存储空间

   不管是Java还是C#,还是其他的支持面向对象的语言,类指的是设计期的对象,当然不会占用运行期的内存空间,因为到了运行期就无所谓类了,都是实例在那里运作了,因此类当然不会占用内存空间,即便是你看到了new的语句,那也只不过是你设想的内存空间。


类好比就是图纸,而实例就是房子,图纸上的房子当然不会占用实际的空间,但是那个想象中的房子将会占用多少空间却是图纸上已经标明了的,一旦付诸实施,那个房子的样子肯定是预期的。一个类设计完成,那么它的大小以及代码的运作都固定了,一旦其实例运行起来,其效果当然也是预期的。


       那么问你图纸上画的是什么?当然是“房子”,那么这个抽象的“房子”实际上相当于对象,虽然它并不实实在在存在,这就是对象的抽象意义。根据图纸造好的房子当然也是对象,这就是对象的实际意类的定义:

自然 语言定义

计算机语言定义

类  人类

开始定义

属性:姓名、性别、年龄、血型、身高、体重、IC卡、IP卡、IQ卡…

行为(方法):吃、喝、拉、撒、哭、笑闹、跑、跳、投..

结束定义

Class      Person

{

String Name、Sex、Age、…

void Eat();

void Drink(); …

}

关键字:是指在C#中具有特殊意义的单词,不能随意使用。例如class 、static、void等都是关键字。(总数)

编译器概念:类似于日常生活的翻译。可以将我们不懂的外文书籍或其他文化产品翻译为我们看得懂的书籍或其他文化产品。

如何测试翻译会翻译,开始翻译了?


C#的翻译在哪个地方:csc.exe


à环境变量配置:即指定我们C#翻译的地址(翻译的家在哪里?)


步骤:


1.找到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727,这个地址,大家会发现有个,这个就是我们要找的C#的翻译。


2. 我的电脑à右键“属性”à高级,出现如下界面

3.设置path;单击pathà编辑à后面加 ;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

切记前面有分号,表示分隔.

项目1:使用C#开发第一个程序欢迎界面

项目背景:对于每位学习程序的朋友来说,都有自己的第一个激动人心的程序。

解决方案:学习如何编写代码,编译程序,调试程序,运行程序

任务1:编写代码

class Person
{     //开始用“{”表示
       //属性:暂时不写
       //行为:暂时不写
       static void Main()
       {
              System.Console.WriteLine("偶滴第1个程序^.^");//用来在屏幕上显示一句话
       }
}     //结束用“}”表示

任务2:编译程序:


首先,需要用C#编译器来翻译,我们的第一个C#程序,有如下三种方式进入编译环境:


  1:用鼠标单击“开始”à“运行”输入cmd   (需要配置path环境变量)


2:用鼠标单击“开始”—》程序—》Microsoft .Net Framework 2.0àSDK命令提示


3:用鼠标单击“开始”—》程序—》Microsoft  Visual Studio 2005àVisual studio ToolsàVisual Studio tool命令提示


其次,在出现的黑屏程序输入:


Csc F:\C#\Welcome.cs    (注意:F:\C#为学员C#文件的位置)

任务3:运行程序

输入刚才的C#文件名,WelCome,出现如下效果:

实践问题:

选择题:

1.      下面哪个不是类?


A.谢霆锋同学的一支派克钢笔              B.PDA


C.用友软件                        D.北京人


2.Console是一个__________


A.命名空间                       B.类


C.流程图                           D.函数


3.在C#程序中,哪个地方是程序的入口点_______


A.Console                           B.Main()


C.void                                 D.{}


4.C#中的编译器是_______


A.csc.exe                           B.csc


C..NetFramework               D.javac

 

小结:

在本章中,我们主要学习了:

  •   C#是什么
  •   面向对象的知识
  •   如何配置C#环境变量
  •  开发自己的第一个C#控制台程序
 

英语词汇:

文             全文                                         中文

OOP                             面向对象的编程

OOA                         面向对象的分析


OOD                         面向对象的设计


Class                           类


Public                             公共的


Static                      静态的


Void                            无返回值的


Main                        主要的(程序入口函数)


String                      字符串


System                       系统


Console                         控制台


Write/WriteLine                    输出/输出且换行


Line                            行


Accept                      接受


Display                         显示


Player                                                      游戏者

 

练习项目:

      1.在DOS时代,有经典的黑屏游戏选择界面,现请大家做出我们自己的游戏选择界面:

效果如下:

2.打印一正三角形等边)

3.打印一超市登陆界面

目录
相关文章
|
SQL XML 数据库
C#OOP之十六 开发常用之各种规范参考
C#OOP之十六 开发常用之各种规范参考
53 0
|
1月前
|
存储 C# 索引
C# 一分钟浅谈:变量与数据类型简介
【9月更文挑战第1天】在 C# 编程中,了解变量与数据类型至关重要。本文详细介绍了 C# 中的值类型(如整数、浮点数、布尔值等)和引用类型(如类、接口、数组、字符串)。通过示例代码展示了变量的声明与使用方法,并针对数据类型转换错误、变量未初始化及数值溢出等常见问题提供了解决方案。正确选择数据类型不仅能提升程序性能,还可避免潜在错误,有助于编写高质量代码。
120 47
|
22小时前
|
设计模式 开发框架 C#
在C#中使用适配器Adapter模式和扩展方法解决面向对象设计问题
在C#中使用适配器Adapter模式和扩展方法解决面向对象设计问题
|
2月前
|
图形学 C# 开发者
全面掌握Unity游戏开发核心技术:C#脚本编程从入门到精通——详解生命周期方法、事件处理与面向对象设计,助你打造高效稳定的互动娱乐体验
【8月更文挑战第31天】Unity 是一款强大的游戏开发平台,支持多种编程语言,其中 C# 最为常用。本文介绍 C# 在 Unity 中的应用,涵盖脚本生命周期、常用函数、事件处理及面向对象编程等核心概念。通过具体示例,展示如何编写有效的 C# 脚本,包括 Start、Update 和 LateUpdate 等生命周期方法,以及碰撞检测和类继承等高级技巧,帮助开发者掌握 Unity 脚本编程基础,提升游戏开发效率。
45 0
|
4月前
|
开发框架 .NET 程序员
掌握C#语言的精髓:基础知识与实用技能详解(数据类型与变量+ 条件与循环+函数与模块+LINQ+异常+OOP)
掌握C#语言的精髓:基础知识与实用技能详解(数据类型与变量+ 条件与循环+函数与模块+LINQ+异常+OOP)
29 0
|
自然语言处理 C# 数据格式
C#OOP之十五 String类&StringBuilder类
C#OOP之十五 String类&StringBuilder类
35 0
|
C# 数据库 Windows
C# OOP程序设计目录
C# OOP程序设计目录
39 0
|
5月前
|
存储 开发框架 安全
C# .NET面试系列二:面向对象
<h2>面向对象 #### 1. 什么是构造函数? 构造函数(Constructor)是一种特殊类型的方法,它在创建类的实例(对象)时被调用,用于初始化对象的状态。构造函数的名称必须与包含它的类的名称相同,并且没有返回类型。 主要特点和用途包括: 初始化对象: ```c# 构造函数主要用于初始化类的实例。当使用 new 关键字创建类的对象时,构造函数会被调用,确保对象在使用之前处于一个合适的状态。 ``` 与类同名: ``` 构造函数的名称必须与包含它的类的名称完全相同。 ``` 没有返回类型: ```c# 构造函数没有返回类型,甚至不能声明 void。它的目的是初始化对象
81 0
|
开发框架 .NET 编译器
C#OOP之十四 .Net Framework简介
C#OOP之十四 .Net Framework简介
83 0
|
存储 算法 编译器
C#OOP之二 变量和表达式
C#OOP之二 变量和表达式
37 0