面向对象基础进阶03

简介: 面向对象基础进阶03

一:对象的排序和接口


1:List中的元素排序,基本数据类型元素排序

调用Sort()方法按字母升序,降序排序;


调用Reverse()方法,实现元素反转;


2:利用下面代码实现了排序

679140-20151023221443833-1355332648.jpg


3:关于接口


概念:


 *接口就是一个类的声明,里面可以有属性,方法,但是方法中没有任何方法体,仅仅对方法的签名做了个约束。


 *不同的类可以实现相同的接口,方法的内容可以根据需要编写。


接口的作用:


 *为调用者提供方便,实现不同的功能;


接口的系统:


 *系统接口,由.net平台规定,程序员只能使用,比如Comparable接口。


 *自定义接口,由程序员自己定义;


4:比较器ICompare应用


  重新添加ICompare的接口,在每个类中来实现;

然后在Sort()重载方法时需要一个接口类型的参数;


5:Sort()方法的总结


List集合的Sort方法


  *Sort()使用默认比较器IComparable排序对象;


  *Sort(ICompare compare):将实现比较器接口的对象作为参数。


集合排序总结


 *若是基本的数据元素则可以直接排序。


 *若是对象数据类型,则当为一种时直接默认排序,当需要多中排序时,需要添加排序类,并给每个类添加接口


二:文本文件操作


1 数据存储方式:


     文件存取——读取方便,可存在任何介质中 ————》大量,关系度大,复杂的数据


     数据库存取------》大量,关系简单;


2 写入文本内容的基本步骤


   *首先要引入命名空间


   *1:创建文件流      //文件保存路径


   *2:创建写入器


   *3:以流的方式写入数据;


   *4:关闭写入流


   *5:关闭文件流

679140-20151023221445880-480631568.jpg

3 读取文本文件


   *1:创建文件流    //文件保存路径;


   *2:创建写入器


   *3:以流的方式写入数据;


   *4:关闭写入流


   *5:关闭文件流


679140-20151023221448005-768861042.jpg

三:项目经验<注意事项>


1:先要了解一个项目,要设置几个类,每个类名都要有具体的意义,这样便于别的程序员使用代码;


2:了解每个类的关系,里面的具体内容。{属性和方法}


3:执行对象职责分析明确,就是将其划分为多个模块,几个模块之间完成调用就行;


4:写程序时应该边写边调试,多进行打断点,了解程序的运行过程;


5:在一些细节问题上面,我们应该站在用户的角度去思考问题,多了解用户体验;


6:写一个程序,要知道自己写的路径,就是第一步干什么,第二步干什么,要有一个明确的思路,不可胡乱写,这样就会产生很多问题。


7:注意代码的规范,一些不必要的注释可以不需要写,还有就是我们的命名规范,我们要用一些英文来表示,千万不可以用拼音来表示。


目录
相关文章
|
SQL 存储 开发框架
数据定义语言 - DDL
数据定义语言 - DDL
751 0
|
边缘计算 自动驾驶 物联网
5G 如何实现大规模天线阵列:赋予无线通信全新力量
5G 如何实现大规模天线阵列:赋予无线通信全新力量
887 0
|
Linux
Linux telnet安装及端口测试联通性
Linux telnet安装及端口测试联通性
359 10
|
自然语言处理 JavaScript 前端开发
最好用的 12 款 Vue Timepicker 时间日期选择器测评推荐 - 卡拉云
Vue 时间日期选择器(date-timepicker)组件在使用 Vue 框架开发中使用非常频繁。vue timepicker 除了基础选择日期时间外,还有非常多样的功能配合不同场景使用,比如 12/24小时,禁止选择某些日期,高亮某些日期,夜间模式,多语言,酒店订单的特别场景等。本文记录了我自己使用多年最好用的 12 款 vue timepicker 组件,每一款都经过我实际测试,推荐给大家。
1689 0
|
机器学习/深度学习
深度学习:张量 介绍
深度学习:张量 介绍
|
并行计算 API C++
GPU 硬件与 CUDA 程序开发工具
GPU 硬件与 CUDA 程序开发工具
411 0
|
人工智能 Java 大数据
jstack命令:教你如何排查多线程问题
image 这是之前的一个死锁案例: 一个多线程死锁案例,如何避免及解决死锁问题? 如程序中发生这样的死锁问题该如何排查呢?我们可以使用java自带的jstack命令进行排查。
3309 0
|
机器学习/深度学习 数据可视化 数据挖掘
资源分享 | 从加减乘除到机器学习
资源分享 | 从加减乘除到机器学习
319 0
导入了Junit依赖,但@Test注解依然爆红~
导入了Junit依赖,但@Test注解依然爆红~
598 0