Java面向对象

1、面向过程与面向对象有哪些区别与联系?

面向过程:实现功能时每个步骤、每个细节需要详细处理。强调步骤
面向对象:不关心具体步骤,把事情交给会做的人。强调对象

2、面向对象的思想特点有哪些?

更符合思维习惯。
复杂的代码简单化。
从执行者变成指挥者。

3、面向对象的三大特征分别是什么?

封装(encapsulatio)
继承(inheritance)
多态(polymorphism)

4、什么是类,什么是对象?什么是成员变量,什么是成员方法?

类是Java最基本的单位,类是一种抽象,是一组相关属性和行为的集合,可以看成一类事物的模板
对象是类的具体体现,是类的实例

类的成员
成员变量 事物属性
成员方法 事物行为

5、局部变量和成员变量的区别?

(1)定义位置不同:
局部变量在方法定义中或者方法声明时
成员变量在类中方法外
(2)生命周期不同:
局部变量随着方法的调用而存在,随着方法调用完毕而消失
成员变量随着对象的创建而存在,随着对象的销毁而消失
(3)默认值不同:
局部变量没有默认的初始值,必须定义,赋值,才能使用
成员变量有默认的初始值
(4)在内存中的位置不同:
局部变量保存在栈内存中,
成员变量保存在堆内存中

6、方法的参数

基本数据类型作为形式参数时,传入具体值
引用数据类型作为形式参数时,传入地址值
注意String类的特殊性,StringBuffer 和StringBuilder

7、构造方法

对对象的数据(属性)进行初始化的方法
格式:
(1)public 权限修饰符,方法名与类名相同(大小写也与类名一致)
(2)没有返回值类型 void都没有
(3)没有具体返回值return
注意:
(1)对象不能调用构造方法,创建对象时类名 对象名 = new 类名(),类名()就表明调用的是该类的无参构造函数
(2)构造方法可以重载

8、匿名对象

匿名对象调用方法格式 new 类名().方法名();
匿名对象只适合对方法的一次调用,多次调用会产生多个对象,占用内存。
匿名对象可以调用类的属性,但调用后立刻会被垃圾回收器回收,无意义。
匿名对象可作为参数传递。

9、封装

类隐藏对象属性及实现细节,只对外提供公共访问方法。
封装在Java中的体现:
(1) 方法
(2) private关键字
(3) 包
(4)接口
封装好处:
减少耦合、易于理解和维护。
隐藏实现细节。
防止该类的代码和数据被外部类随意访问。
提高代码复用性、安全性。

private关键字

特点:
private 是权限修饰符,可以修饰成员变量和成员方法,被其修饰的成员只能在本类中被访问。
private的应用:
成员变量用private修饰
提供对应的getter()和setter()方法,可以编写其他逻辑。

this关键字

代表当前对象的引用,访问本类内容
局部变量和成员变量重名时采用“就近原则”优先使用局部变量,解决成员变量和局部变量的同名冲突。
用法:
1、本类成员方法访问本类成员变量;
2、本类成员方法中访问本类另一个方法;
3、在本类构造方法中访问本类另一个构造方法(构造方法重载调用)需注意:this语句必须是唯一一个,不能与super同时使用

继承
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。