封装,继承,多态 -- 面向对象编程的特征
小白一枚,纰漏万千却不掩感慨。。。人艰不拆。
初学JAVA是大一上期学完C++后,一上来就讲条件语句啊,循环啊,方法啊,数组啊,所以以为JAVA和C++没多大区别,至于老师讲的面向对象语言的特性更是没有体会。所以一开始学JAVA,要做的脑残程序,我基本是将C++的直接照搬过来,所有的东西都放在程序入口 public static void main(String[] args) { }中。当然咯,一开始,也确实没多大问题,只是直到学习了JAVA(及其他OPP编程语言)的继承机制以后,才渐渐感觉面向对象的伟大了。
用我做的一个登陆界面来说
封装性:将方法实现过程封装起来打包,通过方法来调取直接获得结果。(便于系统的升级啊,代码规范啊,防止误操作啊,减少明明冲突。。。)
比如,我把所有的构造窗体的代买都写到类似于方法public void showUI(){}中,放在类public class Interface(){}中,封装起来,然后通过new Interface().showUI();来显现窗体。
继承:其实就是允许创建分等级层次的类。就像,一个父亲(父类),可以生一个儿子(子类),儿子又可以生一个儿子(子类的子类)。。。显然的儿子可以从父亲那里继承来很多东西,除了private 属性。当然,一个父亲是可以有很多孩子,但一个儿子只可以有一个父亲。(父类可以有多个子类,而子类只可以有一个父类)
注意:每一个子类对象的产生必然伴随这父类对象的产生。或者说一定要有父亲 才能有儿子。当父类存在无参构造器的时候,那么一旦调用子类构造器。 都会默认调用到父类的构造器。如果父类一旦重载了构造器不存在无参构造器,那么子类所有构造器必须用super关键字调用父类的任意一个构造器。
在一个类中,通常采用重载来增加方法的多样性。而有了继承,就自然而然有了重写。通过从父类继承来方法,子类对该方法进行重新编码(增加或者改变功能),多个子类重写父类方法,就体现出了多态性:简单理解,即父类的一个方法,被子类继承重写后,让该方法变得多种多样。
当然啦,我刚刚说的继承,主要是针对于类和类的继承。
JAVA中还有两个奇葩一点的东东:接口和抽象类。
接口:声明接口用关键字 public interface 接口名{},其属性必须采用final或者static声明,而其方法,只能声明不能自身实现。它并非类,不可以构造对象。那怎么办呢?就用类去继承接口,用implements关键字。但是有一个注意的是,接口中声明的所有方法都必须被实现。这个时候就来了抽象类。抽象类是特殊的类,采用abstract声明。通常同它来集成接口,然后选择性的实现接口中的方法。
这就好比,接口是整个水箱从大水缸里引水的总接口,而抽象类是用来分流的,而类就是水管。从总接口里引出来的水都必须装进水箱(所有声明的方法都要实现),而抽象类就实现了水管的选择性分流。
继承重写的最佳体现就是监听器啦。创建一个监听器继承于java.awt.event.ActionListener,然后重写方法actionPerformed。
JAVA之旅逐渐开始,魅力渐显。
分享到:
相关推荐
java班级管理系统(java+面向对象+源码) java班级管理系统(java+面向对象+源码) java班级管理系统(java+面向对象+源码) java班级管理系统(java+面向对象+源码) java班级管理系统(java+面向对象+源码) java班级管理...
本书内容由浅入深,紧密结合实际,利用大量典型实例,详细讲解Java面向对象的编程思想、编程语法和设计模式,介绍常见Java类库的用法,总结优化 Java编程的各种宝贵经验,深入阐述Java虚拟机执行Java程序的原理。...
Java面向对象程序设计是计算机编程领域中的核心主题,它基于面向对象编程(OOP)理念,使得代码更具有模块化、可复用性和易于维护的特点。以下是对标题和描述中涉及的知识点的详细阐述: 1. **第1章:Java入门** -...
Java面向对象编程PDF 在这篇文章中,我们将对Java面向对象编程的基础知识进行总结和解释。面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为...
Java OOP面向对象Java OOP面向对象 Java OOP面向对象Java OOP面向对象
Java面向对象精髓编程是Java开发的核心概念,它涵盖了类、对象、封装、继承、多态等关键要素。本文将深入探讨这些概念,并结合实际案例,帮助初学者从零开始掌握Java编程。 首先,我们从“Hello, World!”开始。这...
Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程(OOP)原则,为开发者提供了构建复杂软件系统的方法。本资源包含了该课程所有章节的课后习题答案,帮助学习者深入理解Java语言的面向对象...
Java面向对象,自己学习整理的Java的面向对象的思维导图。
1.java学习面向对象思想.zip1.java学习面向对象思想.zip1.java学习面向对象思想.zip1.java学习面向对象思想.zip1.java学习面向对象思想.zip1.java学习面向对象思想.zip1.java学习面向对象思想.zip1.java学习面向对象...
Java面向对象应用程序开发是软件开发领域中的核心主题,尤其对于初学者和专业开发者而言,理解并掌握这一技术至关重要。Java语言以其强大的面向对象特性、跨平台兼容性以及丰富的类库,成为了开发各种类型应用程序的...
孙卫琴的java面向对象电子书 由于是图片 300m
Java 面向对象编程练习题与答案 本资源摘要信息涵盖了 Java 面向对象编程的多个知识点,包括 Font 类、Toolkit 类、包机制、抽象类、数组操作等。 1. Font 类: Font 类是 Java 中的一个类,用于设置程序中的字体...
《Java语言面向对象程序设计实验指导与习题答案》是由范玫和马俊共同编著的一本面向初学者和进阶者的Java编程书籍。这本书旨在帮助读者深入理解Java语言的面向对象特性,并通过一系列的实验指导和习题解答,提升实践...
Java面向对象课程设计是计算机科学领域中一个重要的实践环节,旨在帮助学生深入理解面向对象编程的概念和技巧。在这个课程设计中,学生通常会被要求完成一个实际的项目,使用Java语言来实现,同时需要提交详细的报告...
Java面向对象程序设计是计算机科学中的一个重要领域,尤其在软件开发中占据核心地位。第二版的《Java面向对象程序设计》课件旨在深入浅出地介绍这一关键概念,帮助学习者掌握Java语言的基础以及面向对象编程的核心...
使用Java实现面向对象编程使用Java实现面向对象编程
Java是一种广泛使用的编程语言,以其强大的面向对象特性而闻名。面向对象编程(Object-Oriented Programming,OOP)是Java的核心理念,它使得程序设计更加模块化、可维护且易于扩展。下面,我们将深入探讨Java的面向...
面向对象的简、由类创建一个对象的方法、类的编写与对象的创建、类的构造函数、类的方法、修饰符、Java中的封装/继承/多态等特征、Java中的线程、用Java创建一个小世界、多线程共享数据,以及面向对象中的各种设计...
Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程(OOP)的概念,是一种强大的编程范式。在Java中,OOP的核心概念包括类、对象、封装、继承、多态等。这本书"Java面向对象程序设计"由耿祥义和...