初识Java

初识Java

1、什么是Java?

简单地说,Java 是由 Sun 公司于 1995 年推出的一门面向对象程序设计语言。2010 年 Oracle 公司收购 Sun 公司,之后由 Oracle 公司负责 Java 的维护和版本升级。

2、什么是面向对象?

面向对象其实是一种设计思想,基于面向过程而出现的一种设计思想。

那什么是面向过程呢?

例子:比如干饭,中午了,我想吃水煮牛肉。

面向过程:我要去市场买牛肉,自己喜欢的青菜,然后自己准备一些其他的辅料,在自己烧菜。

面向对象:直接在网上下单,点个外卖,不用自己动手做菜

在面向过程中会存在一些问题就是,完成一件事太过于复杂,而且可能出现各种问题,比如少放了什么,没炒熟之类的。而在面向对象中,就是我把我的需求告诉给一些专业的人,让他们来解决,具体怎么解决的,我不关心。即我要的水煮牛肉,他放了哪些东西,按什么顺序放的,由谁来做的,做的人的名字是什么等等,我都不需要知道。

面向对象是模型化的,即将具体的事物抽象成一个类。类中包含了这个事物的一些属性、行为。可以在实现某一具体事件时,通过类与类直接各自的功能来共同完成该事件。

面向对象的底层其实还是面向过程,把面向过程抽象成类,然后封装,方便我们我们使用的就是面向对象了。

面向过程:

优点:性能比面向对象好,因为类调用时需要实例化,开销比较大,比较消耗资源。
缺点:不易维护、不易复用、不易扩展.

面向对象:

优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护 .
缺点:性能比面向过程差

3、面向对象的三大特性:

1、封装
隐藏对象的属性和实现细节,仅对外提供公共访问方式,将变化隔离,便于使用,提高复用性和安全性。
2、继承
提高代码复用性;继承是多态的前提。
3、多态
父类或接口定义的引用变量可以指向子类或具体实现类的实例对象。提高了程序的拓展性。

4、五大基本原则:

1、单一职责原则SRP(Single Responsibility Principle)
类的功能要单一,不能包罗万象,跟杂货铺似的。
2、开放封闭原则OCP(Open-Close Principle)
一个模块对于拓展是开放的,对于修改是封闭的,想要增加功能热烈欢迎,想要修改,哼,一万个不乐意。
3、里式替换原则LSP(the Liskov Substitution Principle LSP)
子类可以替换父类出现在父类能够出现的任何地方。比如你能代表你爸去你姥姥家干活。哈哈~~
4、依赖倒置原则DIP(the Dependency Inversion Principle DIP)
高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。抽象不应该依赖于具体实现,具体实现应该依赖于抽象。就是你出国要说你是中国人,而不能说你是哪个村子的。比如说中国人是抽象的,下面有具体的xx省,xx市,xx县。你要依赖的是抽象的中国人,而不是你是xx村的。
5、接口分离原则ISP(the Interface Segregation Principle ISP)
设计时采用多个与特定客户类有关的接口比采用一个通用的接口要好。就比如一个手机拥有打电话,看视频,玩游戏等功能,把这几个功能拆分成不同的接口,比在一个接口里要好的多。

原文地址:https://www.cnblogs.com/lidelong/p/14984300.html