万物皆对象,在我们生活中,一个水杯,一个枕头,都可以把它当做一个对象.

java面向对象有三个特性,封装,继承,多态,如果再加一个,那就是抽象

我们来举个例子

我是上帝,我要开始造人了,我会先想,人是由什么构成的? 好了,我知道了,人是由灵魂和肉体构成的(抽象就相当于定义了模板)

我想好了用什么来构成人,那我就开始造人了,我造着造着发现,太多了,我造着很累,每次都要一个一个来造,那么我自己就做了一个机器,我把造人这个方法放入机器中包裹起来(安全private),让机器来造人,我只需要用这个机器就可以了(封装封装不一定安全,我们等下来说),

造着造着我还是觉得很累,我觉得我不能自己用这个机器造了,我得让我自己造的人去使用这个机器,这样我就不用干活了,我就轻松了,于是我就让我造的人去使用
这个机器去造新的人(继承)

由于我造人的时候让他们有了灵魂,有了思想,于是我发现他们造人的时候造出了很多不一样的人,有的是黄种人,有的是白种人,还有的是黑人(他们本质上都是人)(多态),但是我的机器设置的只能造黄种人,他们为什么就可以造出黑人和白人呢?我知道了,他修改了机器(破坏封装 java中的反射)于是就出现了各种各样的人.

这就是java的封装.继承.多态.抽象.

又来了个问题,既然private并不能保证绝对安全,那么private的意义是什么

继续举个例子,
某岛国的boss管理着他的国家,有一个人用着特别顺手,boss让它做了除了自己意外最大的官,还给了他兵权(private没人能管他,只有自己能管),但是这个人不爽啊,你什么事情都让我来做官还比我大,还管着我,我不服,然后他就开始各种各样搞事情了,于是boss知道了,他也不爽了,你整天在那里搞事情,国家都乱了,但是bosos也没办法直接去把这个人拿掉,因为很多事情还要靠他来完成,他还有兵权,动不了他,于是boss在国家法律上增加了一条,黑社会的合法化(反射),有意思了,boss想,我不搞你,但是我可以找人来搞你,然后boss就让黑社会去修理这个人,威胁他之类得,然后这个人就听话了,他也不调皮了,一直给boss安静的做事

这个例子比较简单,我们可以看出,反射可以破坏封装,private只可以在一定程度下保证安全,反射的作用就是获取一些成员的属性方法,包括私有的,在我们实际的使用过程中是很灵活的

java -谈谈我对面向对象的理解,private的意义相关推荐

  1. Java 谈谈你对面向对象的理解?

    目录 一.解答 二.链接 一.解答 1.概述 面向对象中的对象指的是由一组数据结构和处理它们的方法组成,"数据" 包括对象的静态信息,如特性.状态等:"方法" ...

  2. Java面试一百道题目(第一题)-什么是面向对象,谈谈你对面向对象的理解

    Java面试一百道题目(第一题) 1,什么是面向对象,谈谈你对面向对象的理解. 思路:用面向过程和面向对象做对比来突出什么是面向对象. 答:高级语言分为,面向对象语言和面向过程语言,面向过程语言,距离 ...

  3. 什么是面向对象? 谈谈你对面向对象的理解

    面试官提问:什么是面向对象? 谈谈你对面向对象的理解 面试题拆解: 这道面试题对于工作时间不是很长的Java程序员来说,出现频率是比较高的. 那么到底什么是面向对象呢?讲面向对象之前,需要先聊一下面向 ...

  4. 谈谈面试题之什么是面向对象?谈谈你对面向对象的理解?

    一.什么是面向对象? 对比面向过程,是两种不同的处理问题的角度. 面向过程更注重事情的每一个步骤及顺序,面向对象更注重事情有哪些参与者(对象),及各自需要做些什么 举例说明:洗衣机洗衣服 面向过程:会 ...

  5. 面向对象思想--谈谈你对面向对象的理解

    面向对象 面向对象编程,即OOP,面向对象的概念和应用已经超越了程序设计.软件开发领域,现在已经发展到了各个领域. 面向对象可以说是对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段的产物. ...

  6. Java面向对象系统理解

    1.对面向对象的理解 面向过程 面向过程,核心是过程二字.过程即解决问题的步骤,设计一条流水线,机械式的思维方式.它考虑的是实际地实现,针对一个特定的问题去思考其解决步骤.学过C语言的同学就知道,用C ...

  7. java面向对象的理解_java胜于C语言,却又静态面向对象,简单?

    Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征. Java语言作为静态面向对象编程语言的代 ...

  8. 什么是面向对象?谈谈对面向对象的理解?

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一.什么是面向对象?谈谈对面向对象的理解? 二.3大特征: 1.封装: 2.继承: 2.多态: 总结 一.什么是面向对象?谈 ...

  9. 谈谈你对 Spring 的理解

    谈谈你对 Spring 的理解 Spring 是一个开源框架,为简化企业级应用开发而生. Spring 可以是使简单的 JavaBean 实现以前只有 EJB 才能实现的功能. Spring 是一个 ...

最新文章

  1. php编译工具 知乎,关于知乎回答问题编辑框用Ctrl+V 粘贴图片是如何实现的详解...
  2. JavaWeb(八)——JSP(Java服务器端页面)
  3. ABAP Pragma
  4. FileSystemObject (FSO)对象方法总结及应用
  5. LeetCode之Next Greater Element I
  6. zookeeper的四种类型的节点
  7. Linux下yum命令详解
  8. 我为啥要当程序员未来规划漫谈
  9. android自动清缓存,折腾Android系列 一键清理自动释放缓存
  10. iOS滤镜实现之LOMO(美图秀秀经典LOMO)
  11. CICD:CentOS 下 Jenkins 安装
  12. linux获取pc指针地址,为什么pc可以看成使程序存储器的地址指针
  13. 供应链金融的三种业务模式
  14. c语言程序设计结论,C语言程序设计报告.docx
  15. c语言怎么把一个整数挨挨挤挤,《C语言》课程PPT_第1章_C语言基础
  16. 电影版本名词解析 (CAM,TS,TC,DVDSCR,DVDRIP,HR-HDTV)
  17. 华为云05之网络虚拟化
  18. FFmpeg入门详解之63:画龙点睛:捋起袖子亲手操练直播项目
  19. 面向对象程序设计第四单元总结(UML系列)
  20. python Dataframe数据相关操作

热门文章

  1. C#通过邮箱验证来找回密码
  2. 11.22 (GEMM数据库) EDEM学习笔记 SAG MILL
  3. mybatis-plus 动态指定只查询某些字段
  4. Net中的AOP系列之构建一个汽车租赁应用
  5. weblogic 优化设置 http://wenku.baidu.com/view/c42e7a5bbe23482fb4da4cf2.html
  6. lucene--创建searcher
  7. 验证码: 如下,在进行自动化测试,遇到验证码的问题,一般有两种方式
  8. codeforces723d
  9. Zabbix6无法切换到中文报错You are not able to choose some of the languages...
  10. 根据ip地址查询城市信息