吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2232|回复: 6
收起左侧

[Java 转载] java面试题,什么是面向对象

  [复制链接]
zhuhaodong 发表于 2021-5-6 14:35
本帖最后由 zhuhaodong 于 2021-5-6 14:37 编辑

什么是面向对象?谈谈你对面向对象的理解
对比面向过程,面向过程更注重事情步骤和顺序,面向过程注重事情的参与者(对象)、各自需要做什么。
各自优缺点:面向过程比较直接高效,面向对象更易于复用、拓展和维护。
那么面向对象还有它绕不开的三大特性:封装、继承、多态。


封装
封装就是内部细节对外部调用透明,外部调用无需修改或关心内部实现。
好比我有一个类,这类中有很多属性、方法,而我只想提供一两个方法给外部调用,其他方法不想让外部调用。
下面讲一下java中使用封装最多列子:
1、javabean的属性私有,提供get/set方法对外访问,这样属性的赋值或者获取逻辑只能由javabean本身决定,而不能让外部胡乱修改。
[Java] 纯文本查看 复制代码
private String name;
public void setName(String name){
    this.name="52pojie"+name;
}

这个name属性我就在设置的时候加上了前缀,这样外部不能修改我的赋值操作。
2、orm框架(数据库框架)
我们操作数据库,我们不需要关心数据库是如何建立连接的、sql是如何执行的,只需要引入mybatis等持久层框架调用里面的方法即可。



继承
继承的意义:继承基类的方法,并做出自己的改变和拓展。
子类共性的方法或属性直接使用父类的,而不需要自己再定义,只需要拓展自己个性化的方法或属性。


多态
多态的意义:基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。
多态和继承是包含关系,形成多态的三个条件:继承、方法重写、父类引用指向子类对象
[Java] 纯文本查看 复制代码
父类类型 变量名= new 子类对象;
变量名.方法名();//这里调用的方法是子类的方法,所以这叫多态
//这样调用的好处是子类对象和无限替换,而调用的方法名不用改变。



免费评分

参与人数 1热心值 +1 收起 理由
cfy666 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

逸帅 发表于 2021-5-6 14:52
加油,2022届的嘛
重鸣之蝉 发表于 2021-5-6 16:40
不夏流年 发表于 2021-5-8 14:40
surongxian 发表于 2022-11-14 15:43
希望以后自己面试的时候用得到!
zx1086 发表于 2022-11-14 16:40
有了工作经历以后就没人会问你这种问题了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-28 15:08

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表