由于笔者的目标是全栈,所以今天就来沾一沾这传说中的JAVA,如果以后有机会,定是要自己开发自己的AAAS(分析即服务)公司的。
昨晚有幸看到了一位资深程序员----一只程序汪的一系列文章,自知相见恨晚,虽然学习曲线日趋离谱。但是谁叫我们生在这个时代呢?
不过短时间内,虽然也不想干别的,但还是要学点基础看看的。
目录
一、概念
1.面向对象和面向过程
面向对象是以功能来划分问题,而不是步骤
面向过程
优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。
缺点:没有面向对象易维护、易复用、易扩展
面向对象
优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护
缺点:性能比面向过程低
总结,面向过程性能更好,面向对象更灵活
2、面向对象三大特征
封装:把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
继承:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展
子类和父类产生的关系
多态:允许将子类类型的指针赋值给父类类型的指针
总结:封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用
二、集合
Collection集合包括List和Set
List集合
1.有索引
2.可以重复存储元素
3.元素存储有序
Set集合
1.无序
2.元素唯一
Map集合
采用了 Key-value键值对映射的方式进行存储
key在Map里面是唯一的但是value可以重复,一个key对应一个value。
key是无序、唯一的
value是无序不唯一的
感觉这和python的数据结构大同小异 ,但是分类方式又有不同,先学着看看吧。
三、异常
异常是指程序出现错误时程序的处理方法。
程序错误分为1.编译错误2.运行错误3.逻辑错误
四、IO
这个是输入输出接口的意思
五、继承和接口
接口用来建立类与类之间关系