一.java 是一种静态类型语言
首先需要区别一下静态类型语言和动态类型语言:
静态类型语言:编译时变量的数据类型即可确定的语言,多数静态类型语言在变量使用之前就要声明数据类型(如c/c++/c#/java)
动态类型语言:运行时确定数据类型的语言,动态类型语言在变量使用之前无需声明其数据类型(vb/python)
二.java是一种强类型语言
辨析一下强类型语言与弱类型语言:
强类型语言:偏向于不容忍隐式类型转换
弱类型语言:偏向于容忍隐式类型转换
注意:偏向于用的比较好,java种也存在隐式转换,所谓强弱,其实就是对隐式转换的一个支持度的问题
例如:在java中 int i=1; double b=i;//正确
double i=1; int b=i;//错误
静态动态类型和强弱类型并无确切关系,动静是指类型确定的时间。而强弱是指对类型转换的宽容度。
三. java是一种半编译半解释性语言:
解释性语言:不事先编译代码,在运行时通过虚拟机或者解释器将程序语言转换为机器码。
编译性语言:通过编译,链接方式将程序语言转化为机器码。
编译性语言因运行时不需要编译,所以运行效率较高,但是在改变平台,或者改变代码时,需要重新编译,而解释型语言就弥补了这一点,只要安装了解释器或者虚拟机,就可以实现跨平台。
而java是将代码编译成.class文件,之后在运行时由jvm动态加载这些文件并解释为机器码。因为有了jvm的动态解释,让java实现了一次编译,处处运行。
四:java是一种面向对象语言:
面向对象的三个基本特征:封装 继承 多态
封装:是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体(类或者方法),并尽可能隐藏对象的内部实现细节。
作用:① 对象的数据封装特性彻底消除了传统结构方法中数据与操作分离所带来的种种问题,提高了程序的可复用性和可维护性,降低了程序员保持数据与操作内容的负担。
五:java语言的组织结构:
包:包是java提供的文件管理机制,包把功能相似的类,按照java的名字空间命名规范命名,并存储在磁盘上。
包其实就是一个文件夹,下图是一个包的文件结构:
其中bin中存放的是类的编译文件,src中存放的是类的源码
包的命名规范:为了确保包名的唯一性,使用倒写的域名作为包名
包名一般小写
包的导入使用import关键字
类:具有某些共同特征的实体的集合,是java语言组织的基本元素,类的出现体现了面向对象语言的封装性。
类的具体讲解将会在另一片博文中介绍