Java面向对象回顾(1)
世界万物皆对象。
面向对象四大特性:继承、封装、多态、抽象
Java中现有类,再有对象。创建对象(对象实例化)必须先创建类。
将对象的特征对应写成类的属性。
将对象的方法对应携程类的方法。
如何创建对象?
首先要有对象模板:类。
引用类型 引用 = new 引用类型();
类的方法调用
首先要有对象创建(对象实例化)。
通过:
返回值类型 变量名 = 引用.方法名();
return关键字:方法有返回值类型,必须使用或者有目的的结束代码的执行操作
栈:
栈中存放都是临时变量。
堆:堆中存放对象的完整信息。
对象创建(实例化)
对象属性赋值
方法区:
方法区中存放方法、类的完整信息。
方法的重载:方法名相同,参数列表不同(数量不同,类型不同,顺序不同),实现的功能不同
语法:
public 类名(参数列表){
}
★★若成员变量为 N 个
则构造方法的总数最多为 2^N 个。
其中无参 1 个,有参 2^N - 1 个。
static修饰符:修饰的变量或方法是共享的
this关键字:代表本类的 成员变量或方法
static修饰的方法,不可以使用this关键字
java继承如何实现?
将所有子类中的共有属性、方法,封装在父类中。
让子类继承父类之后,便可对父类中的公有属性、
方法直接使用。从而提高了代码的复用性。
将所有子类中的私有属性,写在子类中。
达到子类私有特性、行为的效果。
继承关键字:extends
public class 子类名 extends 父类名{
}
一旦子类 继承了 父类
子类便可以直接使用父类的公有属性、方法。
注意事项:
this可以省略
this不能存在static修饰方法中
当构造方法的参数名与成员变量名一致时,
必须使用this.成员变量与参数区分开。
this()必须出现在构造方法的第一行。
super:表示父类的
super关键字,使用在子类中。
a、super.成员变量
调用父类的成员变量
只要存在父类中的公有成员变量,
就可以使用super.出。
b、super.方法名();
调用父类的方法。
只要存在父类中的公有方法,
就可以使用super.出。
注意:super.成员变量、super.方法名()
完全可以使用this替换。
在这两种使用情况下,this与super可以相互替换。
super();
调用父类的构造方法
父类的引用指向子类对象。(向上造型
)
向上造型
父类 引用1 = new 子类1();
父类 引用2 = new 子类2();
方法重写要求
a、方法重写发生在子父类之间。
b、方法名相同、参数列表相同。
方法签名(方法名+参数列表)相同。
c、访问权限不能变小。
d、抛出异常不能变大。
访问权限关键字
public:公共的
所有类中都可以使用的。
protected:受保护的
同包类、子类、本类可以使用
default:默认的(缺省的)
同包类、本类可以使用
private:私有的
本类使用
本类 同包类 子类(包外) 所有(其它)类
public √ √ √ √
protected √ √ √ ×
default √ √ × ×
private √ × × ×
final的用法:
a、final修饰成员变量
声明时必须初始化
不可以再次赋值
b、final修饰的局部变量
声明时可以无需初始化
使用前必须初始化且不能再次赋值。
所以final修饰的变量是常量。
c、final修饰的方法
不能被重写
d、final修饰的类
不能被继承
Java面向对象回顾(1)的更多相关文章
- Java面向对象----个人参考资料
Java面向对象 :什么是面向对象.类与对象.封装.构造方法.static关键字.继承.抽象类.接口.多态 一.什么是面向对象 1.面向过程思想 面向过程:(PO,Procedure Oriented ...
- 20165310_Exp2实验二《Java面向对象程序设计》
实验二<Java面向对象程序设计> TDD与单元测试 前期准备: 什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证.对于单元测试中单元的含 ...
- 20155303 实验二 Java面向对象程序设计
20155303 实验二 Java面向对象程序设计 目录 一.单元测试和TDD 任务一:实现百分制成绩转成"优.良.中.及格.不及格"五级制成绩的功能 任务二:以TDD的方式研究学 ...
- 20165324 实验二《Java面向对象程序设计》实验报告
20165324 实验二<Java面向对象程序设计>实验报告 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:何春江 学号:20165324 指导教师:娄嘉鹏 实验日期: ...
- 2062326 齐力锋 实验二《Java面向对象程序设计》实验报告
北京电子科技学院(BESTI) 实 验 报 告 课程: 程序设计与数据结构 班级: 1623 姓名: 齐力锋 学 ...
- Java面向对象之异常详解
目录 Java面向对象之异常[一] Java面向对象之异常[二] 捕获异常的规则 访问异常信息 异常对方法重写的影响 finally详解 Java面向对象之异常[一] Java面向对象之异常[二] 往 ...
- 084 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 03 构造方法-this关键字
084 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 03 构造方法-this关键字 本文知识点:构造方法-this关键字 说明:因为时间紧 ...
- 八、Java面向对象编程
Java面向对象 初识面向对象 面向过程 & 面向对象 面向过程思想 步骤清晰简单,第一步做什么,第二部做什么... 面对过程适合处理一些较为简单的问题 面向对象思想 物以类聚,分类的思维模式 ...
- JAVA面向对象
JAVA面向对象 对象 我们生活中能看到能摸到的一切事物都是对象.在程序中模拟出生活中的所有东西万物皆对象 只要是对象--属性和行为(方法) 属性 对象有什么 例如:学生有姓名.学 ...
随机推荐
- Prometheus 到底 NB 在哪里?- 每天5分钟玩转 Docker 容器技术(84)
本节讨论 Prometheus 的核心,多维数据模型.我们先来看一个例子. 比如要监控容器 webapp1 的内存使用情况,最传统和典型的方法是定义一个指标 container_memory_usag ...
- 正则表达式&常用JS校验
符号 含义 ^ 以什么开头 $ 以什么结束 * 任意个(包括0个) + 至少一个 ? 没有或一个 {a,b} a-b个 {a} 正好a个 {a,} 至少a个 | 或 . 任意字符 [] 方括号内的任意 ...
- maven基本基础知识及命令学习-1
Maven概述:Maven是很有效的项目管理工具,maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目构建.报告和文档的软件项目管理工具.统一管理环境,架包等. 一 maven下载 ...
- 使用缓存Memcache存储access_token
接上篇文本,千辛万苦终于拿到了access_token. 正常情况下access_token有效期为7200秒,重复获取将导致上次获取的access_token失效.目前,获取access_token ...
- 剑指offer--面试题3
一 题目: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.完成一个函数,输入这样的数组和一整数,判断这个数组是否包含这个整数. 二 分析 如果这个二维数组是 ...
- XML学习笔记之XML的简介
最近,自学了一段时间xml,希望通过学习笔记的整理能够巩固一下知识点,也希望把知识分享给你们(描红字段为重点): XML(extensible Markup language):可扩展的标记语言,解决 ...
- AngularJS学习篇(六)
AngularJS 控制器 AngularJS 应用程序被控制器控制. ng-controller 指令定义了应用程序控制器. 控制器是 JavaScript 对象,由标准的 JavaScript 对 ...
- 手机网站的tips[转载]
原文:http://www.haorooms.com/post/phone_web 1. 安卓浏览器看背景图片,有些设备会模糊. 用同等比例的图片在PC机上很清楚,但是手机上很模糊,原因是什么呢? 经 ...
- day2--通过setup设置网卡
配置IP地址,安装完成centos之后,需要配IP地址,流程如下: 1.首先开启虚拟机,如下: 2.登陆账号,root账户登陆,如下: 3.输入setup,按回车键进入,设置IP的方法有很多种,此处采 ...
- JS中的循环---最全的循环总结
在讲循环的之前,先知道一下循环结构的执行步骤 1.声明循环变量: 2.判断循环条件; 3.执行循环体操作: 4.更新循环变量: 5.然后循环执行2-4,直到条件不成立,跳出循环. 1while循环 v ...