java的语言特性

一.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语言组织的基本元素,类的出现体现了面向对象语言的封装性。

类的具体讲解将会在另一片博文中介绍








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值