忽来灵感,谈谈对java的理解

    编程语言,都有自己固定的语法,就我所了解java语言来说,java的优点我就不说了,网上多的是.但是java的有两点是我想说的 ,那就是"简单"和"功能强大".
    java代码时开源的,为我们开发人员提供了很多问题的解决方案(一些类和方法),那么这些解决方案的底层是怎么做到的呢?
相信初学者应该都学习过一些简单的算法,例如最熟悉的排序,单单排序又有好多种写法,比如冒泡排序,快速排序,二分法排序,选择排序等等算法和数据结构是一门语言的灵魂,如果这些算法让我自己实现的话,那么会比较的复杂,因为你需要考虑的东西就多了起来,相比于javaApi直接提供的一个sort方法来看,
自己重写的话理,大多数人都能写的出来,只是时间长短问题,耗费精力和时间, 这也就是java的简单所体现的一个方面,你不需要去了解它是怎么写的,就只要知道有这个方法可以干什么就行了序
就可以了,直接拿着用,大大的节省了我们的时间成本,当然了如果对于业务中遇到的比较复杂的一些逻辑,还是需要用到自己去写这些方法的
java是提供给民用和商用的,至于军用的东西,是不可能使用编程语言的,(个人不是很了解,但是直觉告诉自己他们是使用汇编,c,或着比之更低级的语言写的)
上面我说了java的简单易上手,简单则代表着它的强大,
个人觉得java最强大支出莫过于java本身为用户提供了一套反编译的机制,比如说你写了一个类,封装了一些参数,不管是私有还是公有的参数,还有一些方法,你不仅可以通过实例化对象来调用该类,还可以通过类全名进行反射实例化,
举个例子com.test.BB.java这个文件,你想在com.first.Aa.java中使用,除了将 BB的类全名通过import关键字导入到Aa类中,你也可已通过java的反射机制进行
实例化BB类,进而操作它,其实导包和使用反射在jvm底层是一样的原理(个人理解,没看过jvm源码,请指教),所以简单中又彰显了java语言的强大,和高扩展性,我们可以根据自己的需求来做更多的事情,比如一些框架的实现,比较有名的像spring中的AOP就是基于动态代理,动态代理又基于反射.
我认为这是java语言的一个强大之处

此文章为个人理解,在工作开发空闲之余来了灵感,就写下了,如有错误请各位指正
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值