Java认知

什么是Java?

Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,而且摒弃了C++语言里的多继承和指针等概念,因此Java具有功能强大和简单易用的两个特征,Java语言具有静态面向对象编程语言的代表,极好的实现了面向对象的理论,程序员以优雅的方式思维进行复杂的编程

什么是静态语言?

        静态语言是在编译期间进行数据类型检查的语言,动态语言是在执行的时候进行数据类型检查的语言。

Java语言特点:

Java语言具有简单性、健壮性、面向对象、安全性、跨平台性、可移植性、分布式、多线程与动态性等特点。

JVM、JRE和JDK的关系

JVM:Java虚拟机,因为java程序是运行在虚拟机上面的,不同的平台具有不同的虚拟机,所以java具有跨平台性

JRE:JRE包括JVM虚拟机和Java程序所需要的核心类库,比如java.lang

JDK:包含了JRE和开发工具

编译性语言和解释性语言的差异

编译性语言:直接将源代码编译成可执行的机器码(二进制)

解释性语言: 将源代码编译成中间代码(java是字节码),再由解释器(Java是JVM)对中间的代码进行解释运行.在运行的时候才将源程序翻译成机器码

什么是面向对象?

这个问题我已经被我的室友问过n次了,每次我都有不同的想法,但是每次我都以沉默告终,从第一次的完全摸不着头脑,变成今天所想的,就是将现实生活中的事务抽取成对象,然后对这个对象进行操作和编程,但是感觉说出来丢人就没开口,今天就做个系统的归纳,还是因为我太浮躁了遇到问题不喜欢深究。。。

面向对象(OOP)概述,OOD(面向对象的设计),OOA(面向对象的分析)

万物皆对象,就是将现实的事务抽象出来,把现实生活中的事务以及关系抽象成类,通过继承、实现、组合的方式把万物都容纳进来,实现了对现实生活中的抽象和数据建模。

看了概念,举个列子。。

就比如我今天我今天想去图书馆借一本书

面向过程:我自己去图书馆找,然后拿去给图书管理员申请借阅,然后拿着书跑回去

面向对象:我:”王天赐去帮我借一本斗破苍穹“

我不需要自己去干那么多事,什么找书,借书,拿书跑路,直接喊一声王天赐就行,换句话说如果我想借一本武动乾坤,我也不需要自己去找半天,而是喊一句”王天赐去帮我借一本武动乾坤“,

我所面向的对象只有王天赐,而不是去亲自做一些很多事情,这就是面向对象和面向过程的区别

总结:面向过程是一步步,具体化,流程化的(我亲自去弄)

面向对象是抽取出一个类,这是一个封闭的盒子,盒子里面干了什么我不知道,我只知道这个盒子能完成这个功能,我直接使用就行(王天赐去给我借一本书)

面向对象有啥优点呢?

优点:容易维护,容易复用(天天喊王天赐去借),易于扩展(王天赐去给我端洗脚水),由于面向对象具有封装、继承、多态的三大特性可以设计低耦合的系统,让系统更加灵活易于维护(书借错了,要换一本书,直接使唤王天赐,也不用自己去搞那么麻烦)

缺点呢?

太消耗资源了(自己去做,不要钱,喊王天赐去做一次给两块钱)。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值