Bootstrap

C#——面向对象(学习总结)包含些许面试题

面向对象考核

1、 面向对象的三大特征:

封装、继承、多态

2、何为封装

封装就相当于一个人做一件事情,所需要的东西都在自己的脑子里面了,不需要别人的帮助就能够完成这件事情。

3、何为继承

继承就是派生类继承基类的方法与属性;也就是一个父亲和儿子,儿子可以遗传父亲的容貌以及一些行为方式,但是父亲则不能遗传儿子的容貌。

4、何为多态

多态就是一个类被多个类继承;相当于一个人打字,可以用9建打字、26键打字,但是都是用来实现打字这个功能的。

5、虚方法的关键字:

Virtual

6、方法重载必须满足的条件是?

(1)、方法重载的方法名必须相同
(2)、方法签名类型或者个数必须不相同
(3)、必须在一个类中
(4)、返回值类型可以不相同

7、方法重写必须满足的条件是?

(1)、方法名必须相同
(2)、参数列表必须相同
(3)、被重写的方法必须是虚方法
(4)、需要用override关键字
(5)、返回值相同

8、定义用户全部数据查询接口,接口无参数、返回值为List,并实现接口中的业务。(备注:不用写数据查询代码、只编写代码结构)

namespace BankProduct_System.业务接口
{
    /// <summary>
    /// 实现转账的业务接口
    /// </summary>
    interface Users
    {
    	//接口中传入用户对象
        List<User> SelectAllUser();
    }}

//实现类中:
public class ShowUser : Users//这里继承接口
    {
        public List<User> SelectAllUser()
        {
            try
            {
                List<User> list = new List<User>();//用于储存User数据
                string sql = "";
                DataTable table = DBHelper.GetDataTable(sql);
                for (int i = 0; i < table.Rows.Count; i++)
                {
                    string name = table.Rows[i]["Name"].ToString();
                    int age = Convert.ToInt32(table.Rows[i]["Age"]);
                    list.Add(new User(name, age));
                }
                return list;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
                return null;
            }
        }
    }        }
Program中:
		//调用接口实现类中的方法实现数据查询
			Users user = new ShowUser();
            user.SelectAllUser();

9、简述何为面向对象

面向对象就是将现实世界的事务抽象为类,帮助人们实现对现实世界的抽象与建模;也就是将软件比作人的世界一样,各种具有特定职责的软件就成了一个个对象,不同对象之间的相互作用和关联也就构成了一个完整的软件世界。

10、简述何为面向对象编程和面向对象编程

面向过程编程也是我们日程生活中的做事方法,按照一定的顺序从头到尾,一步步的完成,先做什么后做什么,一直到结束。
而面向对象编程则适用于多人工作,例如:是将一件事情,分成许多个小项目,或者分成几个方案,每一个人或者项目负责特定的一个方案的完成,最后由这些部分组成一个整体。

11、以生活案例为主,请举例在生活中继承如何表现:

在生活当中,以整个生物圈为例,生物圈中的动物,植物就是生物的派生类即子类,而生物就是植物和动物的基类,又例如,一对父子,儿子可以遗传父亲的面容以及一些行为方式,但是父亲不能够遗传儿子的面容。

12、请举例OpenFileDialog中常用的三个属性、并说明每个属性的作用

Filter:设置文件过滤类型!
FileName:获取选择文件的完整路径名!
InitialDirecroty:设置打开的文件的初始路径!
Title :设置打开窗体的窗体名称!

13、请举例SaveFileDialog中常用的三个属性、并说明每个属性的作用

Filter:设置文件过滤类型!
FileName:获取选择文件的完整路径名!
InitialDirecroty:设置打开的文件的初始路径!
Title :设置打开窗体的窗体名称!
这里与OpenFileDialog相似

14、请写出File文件对象中,判断文件是否存在、复制文件、移动文件三个方法的代码

string path = @"F:\C#文件操作\保存测试.txt";
            if (File.Exists(path))//判断文件是否存在
            {
                Console.WriteLine("文件存在");
                //复制到  F:\C#文件操作\复制内容  中
                string newPath = @"F:\C#文件操作\复制内容\保存测试.txt";
                //File.copy(旧的路径,目的路径);
                File.Copy(path, newPath);
                if (File.Exists(newPath))
                {
                    Console.WriteLine("文件已经复制成功");
                }
                else
                {
                    Console.WriteLine("文件已经复制失败!!!");
                }
            }
            else
            {
                Console.WriteLine("文件不存在");
            }


            Console.WriteLine("=====================================");
            Console.WriteLine("Move方法的使用");
            //移动F:\C#文件操作\保存测试.txt到F:\C#文件操作\移动内容\保存测试.txt
            string Path2 = @"F:\C#文件操作\移动内容\保存测试.txt";
            File.Move(path,Path2);//path为移动前的路径,newpath是目标路径
            if (File.Exists(Path2))
            {
                Console.WriteLine("文件已经移动成功");
            }
            else
            {
                Console.WriteLine("文件移动失败!!!");
            }

15、请简述常用的集合类有哪些?简述常用的泛型集合有哪些?

常用的集合类:
ArrayList集合
Hashtable字典集合

常用的泛型集合:

List< T>泛型集合
Dictionary<k,v>:泛型字典集合

以上为个人学习总结,如有不足请大家多多指教(#.#)

;