面向对象 理解 C#复习
面向对象:
是基于万物皆对象这个哲学观点. 所谓的面向对象就是将我们的程序模块化,对象化,把具体事物的特性属性和通过这些属性来实现一些动作的具体方法放到一个类里面
通俗点讲:
一切都是对象
举例:
将一栋房子 比作一个对象 【房子:对象】。 从图上也可以看到这是一种新类别的房子【房子:类-Class】 如图
这就是对象,那对象应该包含什么呢?
面向对象的三项基本特征:封装、继承、多态。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections; namespace _11._24
{
class Program
{
struct student
{
public string code;
public string name;
public double score;
}
static void Main(string[] args)
{
ArrayList al = new ArrayList();
Console.Write("请输入学生人数:");
int a = int.Parse(Console.ReadLine());
for (int i = ; i < a; i++)
{
student st = new student();
for (; ; )
{
Console.Write("请输入第{0}个学生的学号:", i + );
string b = Console.ReadLine();
if (b.StartsWith("S"))
{
st.code = b;
break;
}
}
for (; ; )
{
Console.Write("请输入第{0}个学生的姓名:", i + );
string c = Console.ReadLine();
if (c != "")
{
st.name = c;
break;
}
}
for (; ; )
{
Console.Write("请输入第{0}个学生的成绩:", i + );
try
{
double d = double.Parse(Console.ReadLine());
if (d <= && d >= )
{
st.score = d;
break;
}
}
catch
{ Console.WriteLine("请输入数字!"); }
}
al.Add(st);
}
for (int i = ; i < al.Count - ; i++)
{
for (int j = i + ; j < al.Count; j++)
{
student s1 = (student)al[i];
student s2 = (student)al[j];
if (s1.score < s2.score)
{
Object b = al[i];
al[i] = al[j];
al[j] = b;
}
}
}
Console.Write("序号" + "\t" + "学号" + "\t" + "姓名" + "\t" + "成绩" + "\n");
for (int i = ; i < a; i++)
{
student s = (student)al[i];
Console.Write((i + ) + "\t" + s.code + "\t" + s.name + "\t" + s.score + "\n");
}
Console.ReadLine();
}
}
}
面向对象 理解 C#复习的更多相关文章
- js面向对象理解
js面向对象理解 ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是, ...
- java普通类、抽象类、接口、面向对象理解
1.面向对象编程: 面向对象编程的语言不止java一种,还有: simula 67(第一个面向对象语言,支持单继承和一定含义的多态和部分动态绑定): Smalltalk(第一个支持动态类型的语言,支持 ...
- Java面向对象理解_代码块_继承_多态_抽象_接口
面线对象: /* 成员变量和局部变量的区别? A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存 局部变量:在栈内存 C:生 ...
- C++——OOP面向对象理解
从Rob Pike 的 Google+上的一个推看到了一篇叫<Understanding Object Oriented Programming>的文章,我先把这篇文章简述一下,然后再说说 ...
- MYSQL、PHP基础、面向对象基础简单复习总结
一.MYSQL 1.配置MySql 第一步安装服务器(apache). 第二部安装MySql界面程序 2 ...
- c#基础-oop(面向对象理解)
OOP-面向对象 封装,继承多态 一个桌子,用面向对象来描述一下它这个桌子项目 定义桌子类 对象:桌子 桌子的属性:名字,材质,体积 桌子的方法;放东西(方法) 现在桌子要放书,放花瓶,放文件(这里就 ...
- java面向对象理解
面向对象:世间一切事物均可认为是对象,用户不必了解软件内部的实现机制,可根据需要直接调用接口,生成一个正常工作的应用程序. 面向对象的特点:抽象,封装,继承,多态性, 对象:对象就是一个具有明确行为的 ...
- 对C/C++指针问题的彻底理解(复习1)
理解第一篇 上完大学不是我吹(仅仅说我认识的本学校本专业)估计很明白指针的人绝对不超过百分之50,学校low不low另说(因为问他们讲得断断续续的自己也说不明白,只知道那样可以用) 学链表树形结构.. ...
- php面向对象理解(一)
常用的继承过程,以及对public.private.protected修饰符的理解: /*****************************父类************************* ...
随机推荐
- bower 基本应用
1.安装 npm install -g bower 2.指定下载目录: 在根目录建立文件 .bowerrc { "directory": "vendor/bower_d ...
- Structured Streaming Programming Guide
https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html http://www.slidesha ...
- Merge用法
Merge用来从一个表中选择一些数据更新或者插入到另一个表中.而最终是用更新还是用插入的方式取决于该语句中的条件. 下面我们简单的举一个例子: SQL> create table merge ...
- Java程序设计的基本原则
Java程序设计的基本原则-1 1.面向对象 这是java编程里面大家公认的第一原则 2.优先使用对象组合而非类继承 3.分层 最典型的三层架构,表现层-->逻辑层-->数据层 表现层功能 ...
- QComboBox
#include "dialog.h" #include "ui_dialog.h" #include <QtCore> #include < ...
- The identity used to sign the executable is no longer valid.
昨天运行还好好的,今天Xcode突然报这个错误. 在网上搜索了一番,也没有找到合适的解决办法. 那怎么办呢? 于是我就登陆了Appstore的开发者账号,发现里面的证书都是invalid状态,我想应该 ...
- thinkphp接手机网站接口
首先说下,支付宝提供的demo不一定完全正确,可能回缺少些步骤,所以,最好按照规则文档的步骤参照demo写. 先说遇到的问题: 1.错误0001,缺少partner.service等必参数 最初选择的 ...
- maven3创建多模块web项目
实现步骤 创建项目目录 进入“工作空间”目录,创建名为treasure的文件夹,切换至控制台,进入该文件夹. 配置模块 生成各个模块 maven-archetype-quickstart 默认的Ar ...
- iOS7 修改导航系统默认返回按钮文字及颜色
//iOS7 修改系统默认返回按钮文字及颜色 UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithTitle:@"返" ...
- CentOS6.7搭建蜜罐dionaea
yum -y install epel-release wget tar git autoconf* libtool-* mkdir /opt/dionaea 1.安装liblcfg软件.git cl ...