Java学习的随笔(2)Java语言的三大特性
1.面向对象的三大特性
面向对象的三大特性主要包括:继承、封装、多态
(1)继承:就是指子类(导出类)获得了基类的全部功能(所有的域和方法)。 注:在子类中,想要调用基类的方法可以使用“super.方法名”来调用。
术语:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继 承了原始类的 特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增 加新的方法使之更适合特殊的需要。
(2)封装:就是类将功能作为一个方法提供给使用者进行调用,但该功能的具体实现对外部来说是不可见的。
术语:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个 受保护的接口访问其他对象。
(3)多态:对于多态,个人感觉最重要的是向上转型。所谓向上转型是指当函数形参为基类的对象时,调用时的实参可以是导出类的对象。
由于导出类是基类的一个超集,它可能比基类含有更多的方法,但它一定至少具备基类中所含有的方法。在向上转型的过程中,类接口中唯一可能发生的事情是剪裁、丢失多余 的方法,而不是获取它们。
这样,我们就可以看到向上转型对程序简化能带来的贡献:
例:
Java学习的随笔(2)Java语言的三大特性的更多相关文章
- Java语言的三大特性
Java语言的三大特性 1.封装 1.1 概念: 封装也成为信息异常,隐藏对象的属性和实现细节,仅对外公开接口(外部不可以直接看到对象的属性细节并且不能直接更改属性的值,只能通过方法来读取或更改属性 ...
- Java学习笔记之:Java简介
一.引言 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式推出. ...
- Java 学习(1)----- java 学习的总体感觉
好久没有更新博客了,是因为最近在集中精力学习java, Java 的基础知识确实是比 js 多太多了. 学习java 断断续续的差不多有一年左右的时间, 这一年来,感觉懂了一点,过一段时间又忘记了,总 ...
- Java学习笔记心得——初识Java
初识Java 拿到这本厚厚的<Java学习笔记>,翻开目录:Java平台概论.从JDK到TDE.认识对象.封装.继承与多态...看着这些似懂非懂的术语名词,心里怀着些好奇与担忧,就这样我开 ...
- Java 学习笔记 ------第一章 Java平台概论
本章学习目标: Java版本迁移简介 认识Java SE.Java EE.Java ME 认识JDK规范与操作 了解JVM.JRE与JDK 下载与安装JDK 一.Java版本迁移简介 书上已经表达得非 ...
- Java学习笔记之:Java String类
一.引言 字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串. 创建字符串最简单的方式如下: String str= "Hello w ...
- Java学习笔记之:Java的数据类型
一.介绍 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. Java语言提供了八种基本类型 ...
- 【Java学习笔记之一】java关键字及作用
Java关键字及其作用 一. 总览: 访问控制 private protected public 类,方法和变量修饰符 abstract class extends final implements ...
- 【Java学习笔记之一】 java关键字及作用
Java关键字及其作用 一. 总览: 访问控制 private protected public 类,方法和变量修饰符 abstract class extends final implements ...
随机推荐
- iframe的缺点与优点?
iframe是一种框架,也是一种很常见的网页嵌入方式. iframe的优点: iframe能够原封不动的把嵌入的网页展现出来. 如果有多个网页引用iframe,那么你只需要修改iframe的内容,就可 ...
- login-登录
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Inse ...
- 如何让input之间无空隙
有如下两个input: <form action="http://www.example.com/index/search" method="get"&g ...
- GET和POST详解
GET和POST 表单提交方式 http的get提交方法把表单数据编码到url中,可以在浏览器地址栏中看到, post提交把表单数据编码到http请求包的正文部分,在url中啊可能不到数据
- python类class基础
44.class类: 一.类定义的一般形式: 1.简单的形式:实例化对象没有自己独有 ...
- 项目任务管理(TaskMgr)技术篇
判定是否为枚举型:type.IsEnum 应用原型:如果是枚举返回字符型,如果是其他类型直接返回: object value = pro1.FieldType.IsEnum ? pro1.GetVal ...
- WebAPI Post方法接收的FromBody一直为null
// POST api/getjson public string PostTest([FromBody]string value) { return "Got it!"; } 初 ...
- Dao 处理
1. 写一个基础的接口和类来做基本的操作 /** * */ package com.wolfgang.dao; import java.util.List; /** * @author Adminis ...
- jQuery常用特效插件汇总
jquery的CDN引用及下载地址 http://www.bootcdn.cn/jquery/ 1:semantictabs.js可以简单地制作Tabs菜单2:tabBox.js可以非常简单方便地 ...
- BZOJ 1011 遥远的行星
Description 直线上N颗行星,X=i处有行星i,行星J受到行星I的作用力,当且仅当i<=AJ.此时J受到作用力的大小为 Fi->j=Mi*Mj/(j-i) 其中A为很小的常量,故 ...