对JAVA简单的理解

这几天在看JAVA,图书馆借的一本JAVA开发大全,挺厚的一本,内容很多,但不深。包括JAVA的基本语法、线程编程、桌面程序、主要类库、以及后面JSP部分。看了5天了,刚把J线程看完。由于之前学过C++,所以前面基础数据类型,基本语法等等只着重看看JAVA独特的地方。以下是我个人理解总结的一些JAVA与C/C++不同地方及自己的对JAVA的见解。

  1. JAVA与C++最大的不同在于它完全抛弃了面向过程程序设计,是纯种的面向对象语言。
  2. JAVA不支持指针,虽然JAVA本身一些实现地方还是隐约有指针的影子。这样也好,杜绝了内存的非法访问。
  3. JAVA解释器在运行时候实施检查,可以发现数组和字符串等的访问越界问题,解决C/C++程序员比较头痛的越界问题。(C/C++数组下标越界、字符串内存溢出等等在编译时候并不会报错)
  4. JAVA提供自动垃圾回收机制来尽心内存管理,避免程序员在管理内存时候容易产生的错误。这个体现在程序员不需要浪费太多时间在管理内存错误。可以有效防范动态内存分配中可能发生的两个危险:因内存垃圾过多而引发的内存耗尽,以及不恰当的内存释放所造成的内存非法引用。
  5. JAVA的实现多重继承与C++不同,JAVA通过内部类以及实现多个接口来实现与C++一样的多重继承。C++多重继承的规格应该算的是相当复杂的,但是JAVA结合自身特点以这样方式实现多重继承要比C++更好理解一些。
  6. JAVA的多线程机制:JAVA的多线程机制与C++最大不同是JAVA本身提供了多线程的支持,本身提供了线程的同步机制。而C/C++等语言中,都是利用操作系统的多线程支持库赖完成多线程的程序设计,线程之间的同步、异步、并发、互斥等,而且控制起来比较麻烦。

.....(待续)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值