一门面向对象的语言
面向对象的语言特性:封装、继承、多态
它既具有静态语言的特性(如C++)
又有动态语言的效率(动态绑定、动态加载等)
具有相当多的动态特性,表现为三方面:
动态类型(Dynamic typing)
动态绑定(Dynamic binding)
动态加载(Dynamic loading)
动态——必须到运行时(run time)才会做的一些事情。
动态类型:
即运行时再决定对象的类型,这种动态特性在日常的应用中非常常见,简单来说就是id类型。
事实上,由于静态类型的固定性和可预知性,从而使用的更加广泛。
静态类型是强类型,而动态类型属于弱类型,运行时决定接受者。
动态绑定:
基于动态类型,在某个实例对象被确定后,其类型便被确定了,该对象对应的属性和响应消息也被完全确定。
动态加载:
根据需求加载所需要的资源,最基本就是不同机型的适配
例如,在Retina设备上加载@2x的图片,而在老一些的普通苹设备上加载原图,让程序在运行时添加代码模块以及其他资源,用户可根据需要加载一些可执行代码和资源,而不是在启动时就加载所有组件,可执行代码可以含有和程序运行时整合的新类。
修改时间:
2016年11月17日09:34:24