`
seapigxie
  • 浏览: 26638 次
社区版块
存档分类
最新评论

JAVA基础:面向对象的四个特性

阅读更多
对象:由行为、状态和唯一标志组成。
一 抽象
   抽象是忽略一个主题中与当前目标无关的方面,把现实世界中的概念转换为对象,可以是表示数据的VO对象或抽象类,也可以是表示一类行为的接口。有利于从众多变化的状态中抽离出不变的东西。有利于使用继承来构造类的体系,实现多态,使用模板和工厂模式方法来实现对业务过程的抽象。抽象是概念建模和业务流程建模很重要的工具,是面向对象体系的基石,而不是一堆杂乱、混乱、重复、散沙般的、关系错综复杂的类。
二 继承
   是一种连结类的层次模型,并且允许和鼓励类的重用,提供了一种明确表示共性的方法。
继承意味着能声明一个类型,而且能继承父类中的所有操作和数据,同事还有机会声明自己的新方法以改进、具体化、代替或者扩展父类中的方法
  使用父类为应用领域建立层次模型,提供代码重用并允许定制。
  防止继承:利用final声明类或方法,意味不能被修改,当一个类被声明为final时,只有方法自动被设为final,而字段不会。final有两个优点:1、安全   2高效
  类型转换:1、必须在继承体系内进行
            2、转换之前,应先使用instanceof进行检验。
  super:不是一个对对象的引用,而是指向编译器调用超类的专用关键字:
        1、调用超类方法 2、调用超类的构造器。
三、多态
    一个对象变量可以指向多种实际类型的现象。
    动态绑定:一个对象在运行时自动选择正确的方法进行调用的现象
    过程:
    1、编译器检查对象的声明类型和方法(虚拟机预先为每个类计算一个方法表)
    2、重载解析:编译器检查方法调用中提供的方法参数类型(方法原型:名字和参数列表,返回值不是原型的一部分)
    3、静态绑定:如果方法是private,static,final的,或者是一个构造器
    4、动态绑定:虚拟机必须调用对象变量所指向的对象的实际类型和匹配的方法版本。
四、封装
    把数据和行为结合在一个包中,并对对象的使用者隐藏数据有关的实现过程,封装赋予对象“黑盒”特性。
分享到:
评论

相关推荐

    基于Java面向对象程序设计课程报告.doc.doc

    基于Java面向对象程序设计课程报告 .word教育资料基于Java语言的简易坦克大战游戏设计课程报告摘 要: 本课程设计使用Java语言开发了一个简单坦克大战小游戏,主要采用面向对象程序设计 思想来完成程序的需求分析,...

    尚硅谷_宋红康_第5章节练习_面向对象(中).doc

    ·基于JDK 11,将Java8、Java9、Java10、Java11新特性一网打尽 ·课程中,Eclipse和IDEA这两种企业一线开发环境都使用到了 3.技术讲解更深入、更全面: ·课程共30天,715个知识视频小节,涉及主流Java使用的...

    Java语言基础下载

    面向对象的主要特性 18 抽象(Abstraction) 18 封装(Encapsulation): 19 多态(Polymorphism) 20 面向对象的优点 22 面向对象的分析、设计和编程 23 面向对象语言的发展简史 26 内容总结 29 独立实践 30 第三章:面向...

    JAVA基础课程讲义

    第三章 JAVA面向对象程序开发 52 编程语言发展史 52 类和对象是如何产生发展的?如何进化的? 52 面向对象思想初步(OOP初步Object Oriented Programming) 53 面向对象编程的语言的三大特征简介 56 对象和类的概念 56 ...

    尚硅谷_宋红康_第5章_面向对象编程(中).pdf

    ·基于JDK 11,将Java8、Java9、Java10、Java11新特性一网打尽 ·课程中,Eclipse和IDEA这两种企业一线开发环境都使用到了 3.技术讲解更深入、更全面: ·课程共30天,715个知识视频小节,涉及主流Java使用的...

    java基础入门教程

    四 、 Java 语 言 的 应 用 前 景 Java 语 言 有 着 广 泛 的 应 用 前 景 ,大 体 上 可 以 从 以 下 几 个方面 来 考 虑 其 应 用 : 1 所 有 面 向 对 象 的 应 用 开 发 ,包 括 面 向 对 象 的 事 件 描 述、...

    尚硅谷_宋红康_第6章_面向对象编程(下).pdf

    ·基于JDK 11,将Java8、Java9、Java10、Java11新特性一网打尽 ·课程中,Eclipse和IDEA这两种企业一线开发环境都使用到了 3.技术讲解更深入、更全面: ·课程共30天,715个知识视频小节,涉及主流Java使用的...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    面向对象编程的基础 要了解面向对象编程(OOP)的基本概念,需要理解 OOP 的三个主要概念,它们撑起 了整个 OOP 的框架。这三个概念是:封装、继承性和多态性。除此以外,还需了解对象、 类、消息、接口、及抽象等...

    java必了解的六大问题

    *第一阶段:Java基础,包括java语法,面向对象特征,常见API,集合框架; *第二阶段:java界面编程,包括AWT,事件机制,SWING,这个部分也可以跳过,用的时候再看都能来及; *第三阶段:java API:输入输出,...

    达内java培训目录

    Java面向对象 面向对象特性:封装、继承、多态等,面向对象程序设计,基础设计模式等。 掌握面向对象的基本原则以及在编程实践中的意义;掌握Java面向对象编程基本实现原理。 实训项目一:Tetris项目开发 第二阶段...

    Java知识点.docx

    面向对象是种思煜,世间万物都可以看做一个对象,这里只讨论面向对象编程(OOP),Java是一个支持并发、基于类和面向对象的计算机编程语言。 面向对象软件开发关有以下优点: *代码开发模块化,更易维护和修改。 *代码复用...

    Java编程思想(完整版)

    “尽管以C++为基础,但Java是一种更纯粹的面向对象程序设计语言”。 无论C++还是Java都属于杂合语言。但在Java中,设计者觉得这种杂合并不象在C++里那么重要。杂合语言允许采用多种编程风格;之所以说C++是一种杂合...

    Big_Java(英文版)

    其内容自然分为四个部分,分别为基于对象的基础、面向对象设计、数据结构与算法、高级主题。这四个部分分别介绍了Java的基本数据类型、类、继承、多态、数组、数组列表等概念,图形编程、基于对象编程和面向对象编程...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    Java ppt 教程(精简、易学、易懂、典型例题)

    5面向对象的三个特性 6继承,多态和封装。 第三章 1 接口 2 包 3 访问权限 第四章 1什么是异常 2 异常的处理 3 自定义异常类的使用 第五章 1流式I/O基础 2文件 3随机存取文件 4对象输入/输出流

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    基于JAVA的模拟ATM系统的设计与实现【文献综述】.pdf

    由于 Java 本身语言的特点使得他们在网络开发中具有高人一等的表现,而且面向对象特性高, 支持的组件技术也非常多,跨平台的特性也使得它在现在和未来的开发中占据越来越重要 的地位。 三、ATM 系统的发展及未来...

    Thinking in Java第三版+第四版

    从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。  从本书获得的各项大奖以及来自世界各地的读者评论中,不难看出这是一本经典之作。...

    2021年最新java面试题--视频讲解(内部培训84个知识点超详细).rar

    Java面试题05.java面向对象的特征 Java面试题06.装箱和拆箱 Java面试题07.==和equals的区别 Java面试题08.String Java面试题09.讲一下java中的集合 Java面试题10.ArrayList 和LinkedList的区别 Java面试题11.HashMap...

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    │ Java面试题05.java面向对象的特征.mp4 │ Java面试题06.装箱和拆箱.mp4 │ Java面试题07.==和equals的区别.mp4 │ Java面试题08.String.mp4 │ Java面试题09.讲一下java中的集合.mp4 │ Java面试题10.ArrayList ...

Global site tag (gtag.js) - Google Analytics