一、Java是面向对象语言,面向对象语言的特征:
- 抽象:提取自己所需要的属性和行为将其抽象为一个类
- 封装:将对象的属性和行为封装起来,对数据的获取只能通过特定的方法(getter和setter),保证了类内部数据结构的完整性;
- 继承:实现代码的复用,所有的子类共有的属性和行为抽象成一个父类,继承具有单一性和传递性
- 多态: 在程序中定义的引用变量所指向的具体类型和该引用变量调用的方法在编译期无法确定,只有在程序运行期间才能确定,就是可以让程序选择多个运行状态
- Fruit f = new Apple(); Fruit f1 = new Banana(); (向上转型)
- 当父类引用指向子类对象时,调用方法时,如果该方法被子类重写,则调用的是子类中的方法,如果没有被重写,则 调用的是父类中的方法
二、Java文件经过编译器编译后会生成字节码文件,虚拟机解释字节码文件生成本地机器码,本地机器码在计算机上运行,这也是Java跨平台特性的原因(编译只进行一次,每次运行程序时都会进行解释)
- javac Hello.java(编译器编译)
java Hello(解释器解释运行)