java学习笔记1
1.java与C++的区别
- java和C++都是面向对象的编程语言,其实java是C++的一个变种。封装、继承、多态是面向对象编程的主要特征,要有类和对象的概念。
- C++不能自动分配和释放内存,需程序员释放;而java可以自动管理内存,不需手动操作。
- java不具备C++的指针,大大减少了代码的错误率。
- 我目前认为,java中只有两种数据类型:即基本数据类型(如int、double、boolean等)和引用类数据类型(如各种包装类、自定义类等)==。
- C++可以多继承、重载运算符;java没有多继承和重载运算符,但java新增接口的概念来弥补多继承的功能。
- C++可强制类型转换,但java只能自己操作进行类型转换。
2.java的编译执行过程
public class Test{
public static void main(){
System.out.println("Hello,Java!");
}
}
这是一个最简单的java程序,可以看到main函数在类的内部,这点与C++不同,java具有完全的面向对象性:所有的属性、函数都在类中。
它的编译过程大致如下:
1). javac,代码由Test.java(高级编程语言)编译成Test.class(字节码文件),即complie;
2). java,Test.class通过JVM解释为能被计算机识别的机器语言(0101序列),然后根据cpu中的指令集执行。
3.java为什么能一次编译,到处执行?
因为JVM可以屏蔽计算机底层各种操作系统之间的差异。