面向对象与类

时间:2021-05-06 20:10:29

今日主要简单了解面向对象思想以及类的介绍

万物皆对象

面向对象主要有三大特性

一、封装

二、继承

三、多态

将现实生活中实际存在的东西,抽象的提取成程序中的类,对类进行统一的操作,都是以类为基本单元。

面向对象使用的好处

1、使程序结构更加清晰

2、便于维护,方便扩展

3、使程序更加健壮

类是抽取了同一类对象的共同属性并不断的扩展和延伸,并展现自己独特的特性。

 练习

创建student类

class Student
{
public int no;
public string code;
public string name;
public decimal chengji;

}

ArrayList al = new ArrayList();
Console.Write("请输入班级人数:");
int n=int.Parse( Console.ReadLine());

for (int i = 1; i <= n;i++ )
{
Student s = new Student();
s.no = i;
while (true)
{
Console.WriteLine("请输入学生的学号:");
s.code = Console.ReadLine();
if (s.code == "")
{
Console.WriteLine("您的输入有误,不能为空");

}
else
{
break;
}
}
while (true)
{
Console.WriteLine("请输入学生的姓名:");
s.name = Console.ReadLine();
if (s.code == "")
{
Console.WriteLine("您的输入有误,不能为空");

}
else
{
break;
}
}
while (true)
{
Console.Write("请输入第" + i + "个学生成绩:");
try
{
s.chengji = Convert.ToInt32(Console.ReadLine());

if (s.chengji >= 0 && s.chengji <= 100)
{
break;
}
else
{
Console.Write("成绩区间必须在0~100之间");
}

}
catch
{
Console.WriteLine("成绩输入有误!请输入数字!");
}
}
al.Add(s);
Console.WriteLine("-----------------------------");
}

for (int a = 0; a < al.Count - 1; a++)
{
for (int b = a + 1; b < al.Count; b++)
{
Student s1 = (Student)al[a];
Student s2 = (Student)al[b];

if (s1.chengji < s2.chengji)
{
Student zhong = (Student)al[a];
al[a] = al[b];
al[b] = zhong;
}
}
}

Console.WriteLine("========学生信息展示=========");
Console.WriteLine("序号 学号 姓名 成绩");

for (int a = 0; a < al.Count; a++)
{
Student sss = (Student)al[a];
Console.WriteLine(sss.no + " " + sss.code + " " + sss.name + " " + sss.chengji);
}

Console.ReadLine();