大家好,又见面了,我是你们的朋友全栈君。
一. OOP的特点
(1) 万物皆为对象;
(2) 程序是对象的集合,他们通过发送信息来告诉彼此所要做的;
(3) 每个对象都有自己的由其他对象所构成的存储;
(4) 每个对象都拥有它的类型;
(5) 某一特定类型的对象都可以接收同样的消息;
二. Java比C++简单?
(1) Java有垃圾回收器, 不用手动销毁对象;
(2) Java使用单根继承;
(3) Java只能以一种方式创建对象(在堆上创建);
三. 数据存储
(1) 寄存器: 速度最快, 数量有限, 它位于CPU内部, 但我们不能直接控制它。在C,C++中允许你向编译器建议寄存器的分配方式。
(2) 堆栈: 存放基本类型的数据和对象的引用, 但对象本身不存放在栈中,而是存放在堆中。
(3) 堆: 存放用new产生的对象, 速度比分配栈要慢一些。
(4) 静态存储: 固定的一块存储区域, 静态存储里面的数据在整个程序运行期间都能访问到。
(5) 非RAM: 对象被转化成某种能保存在其他介质上的东西, 要用的时候又能在内存里重建。
四. “==” 和 equals
(1) == 用于判断引用对象的内存地址是否相同。
(2) equals比较的也是地址, 但是如果你重写了equals方法, 那么它就可以比较对象的内容。
五. 关于sizeof
C和C++的sizeof()用于获取数据需要占用多少字节的内存, 之所以需要sizeof是考虑到平台移植, 因为C和C++相同
的数据类型在不同的机器上占用的内存长度不一样; 而Java不需要sizeof, 因为Java的数据类型在不同的平台上占用字节是一样的,
Java是跨平台的。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156911.html原文链接:https://javaforall.cn