1.面向对象与面向过程的区别:
<1>面向过程(process-oriented):从解决问题的每一个步骤入手,适合于解决小的简单的问题。
<2>面向对象(Object-oriented):按照现实世界的特点来管理复杂事物,把它们抽象为对象和类,具有自己的状态和行为,通过对消息的反应来完成一定的任务.
面向对象的程序设计实现了对对象的封装,使我们不必关心对象的行为是如何实现的这样一些细节。通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理.
通过消息机制实现对象的交互.
面向对象三大技术: 封装、 继承、 多态(重载、重写).
封装:把联系紧密的元素及相关操作组织在一起,使其相互关系隐藏在内部,而对外仅仅表现为与其他封装体之间的接口,从而构造出具有独立含义的软件实现.
继承:将父类中的属性和方法保留,加上自己(子类)特有的属性、方法,形成一个新类.
通过子类继承父类实现单一继承,通过接口实现多重继承.
重载:方法名相同的不同方法实现(参数类型不同或个数不同);
重写(覆盖):子类重新实现父类的某些方法,使其具有自己的特征.
2.类:抽象出一些对象的共性.
<1> 通过类的定义可以实现代码的复用,描述一个对象时可通过创建类的一个实例来创建该类的一个对象.
<2> 类是一种数据类型,而对象是该类类型的变量,变量名即是某个具体对象的标识名.
类成员:分为实例成员和类成员
实例成员:只有生成对象才能被引用.
类成员:用static声明的成员,是类固有的,直接引用.
类的成员变量和方法中声明的局部变量:
成员变量:作用域是整个类.
局部变量:作用域只是定义它的方法内部.
2.Java与C、C++语言的区别
<1>全局变量:不能在类外定义全局变量;
<2>GoTo语句:不支持,用try...catch...捕获异常;
<3>指针:取消指针,采用数组实现;
<4>内存管理:自动内存回收;
<5>数据类型的支持:固定位数,与实现平台无关;
<6>类型转换:自动检查类型的兼容性;
<7>头文件:不支持,采用包机制;
<8>结构和联合:不支持;
<9>预处理:不支持,通过final定义常量.
<1>面向过程(process-oriented):从解决问题的每一个步骤入手,适合于解决小的简单的问题。
<2>面向对象(Object-oriented):按照现实世界的特点来管理复杂事物,把它们抽象为对象和类,具有自己的状态和行为,通过对消息的反应来完成一定的任务.
面向对象的程序设计实现了对对象的封装,使我们不必关心对象的行为是如何实现的这样一些细节。通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理.
通过消息机制实现对象的交互.
面向对象三大技术: 封装、 继承、 多态(重载、重写).
封装:把联系紧密的元素及相关操作组织在一起,使其相互关系隐藏在内部,而对外仅仅表现为与其他封装体之间的接口,从而构造出具有独立含义的软件实现.
继承:将父类中的属性和方法保留,加上自己(子类)特有的属性、方法,形成一个新类.
通过子类继承父类实现单一继承,通过接口实现多重继承.
重载:方法名相同的不同方法实现(参数类型不同或个数不同);
重写(覆盖):子类重新实现父类的某些方法,使其具有自己的特征.
2.类:抽象出一些对象的共性.
<1> 通过类的定义可以实现代码的复用,描述一个对象时可通过创建类的一个实例来创建该类的一个对象.
<2> 类是一种数据类型,而对象是该类类型的变量,变量名即是某个具体对象的标识名.
类成员:分为实例成员和类成员
实例成员:只有生成对象才能被引用.
类成员:用static声明的成员,是类固有的,直接引用.
类的成员变量和方法中声明的局部变量:
成员变量:作用域是整个类.
局部变量:作用域只是定义它的方法内部.
2.Java与C、C++语言的区别
<1>全局变量:不能在类外定义全局变量;
<2>GoTo语句:不支持,用try...catch...捕获异常;
<3>指针:取消指针,采用数组实现;
<4>内存管理:自动内存回收;
<5>数据类型的支持:固定位数,与实现平台无关;
<6>类型转换:自动检查类型的兼容性;
<7>头文件:不支持,采用包机制;
<8>结构和联合:不支持;
<9>预处理:不支持,通过final定义常量.