Java复习(二)类与对象的基本概念
2.1面向对象的程序设计方法概述
对象
程序中:
一切皆是对象
都具有标识,属性和行为
通过一个或多个变量来保存其状态
通过方法实现他的行为
类
将属性及行为相同或相似的对象归为一类
类可以看成是对象的抽象,代表了此类对象所具有的共有属性和行为
在面向对象的程序设计中,每一个对象都属于某个特定的类
2.1.1抽象
过程抽象
数据抽象
2.1.2封装
2.1.3继承
Java仅支持单继承
2.1.4多态
2.2类与对象
2.2.1类的声明
声明形式
[public] [abstract|final]class 类名称 [extends 父类名称] [implements 接口名称列表] {变量成员声明及初始化;方法声明及方法体; }
关键字
修饰符
可以有多个,用来限定类的使用方式
public公有类
abstract抽象类
final终结类
2.2.2对象的声明与引用
变量和对象
变量除了存储基本数据类型的数据,还能存储对象的引用,用来存储对象引用的变量成为引用变量。
对象的声明
类名 变量名
声明一个引用变量时并没有对象生成
对象的创建
new <类名>() eg: aclock = new Clock()
2.2.3数据成员
声明格式
[public|protected|private] [static][final][transient][volatile] 变量数据类型 变量名1[=变量初值],变量名2[=变量初值],...;
格式说明
public、protected、private为访问控制符
static指明这是一个静态成员变量
final指明变量的值不能被修改
transient指明变量是临时状态(不必持久化(serialize))
volatile指明变量是一个共享变量
实例变量
没有static修饰的变量称为实例变量
储存在堆中
类变量
需要加static修饰符来声明
final修饰符
实例变量、类变量、方法参数
2.2.4方法成员
可以没有。
分为实例方法和类方法
声明格式 [public|protected|private] [static][final][abstract][native][synchronized] 返回类型 方法名([参数列表])[throws exceptionList] {方法体 }
public、protected、private为存取控制符
static指明方法是一个类方法
final指明方法是一个终结方法
abstract指明方法是一个抽象方法
参数传递
值传递:参数类型为基本数据类型时
引用传递:参数类型为引用变量时(比如对象类型或数组时)
实例方法
类方法
声明加static修饰符,不能被声明为抽象,不能访问实例变量。
2.2.5类的组织
包
import语句的格式
import package1[.package2..].(classname|*);
2.2.6类的访问控制
关键字this的使用
如果形式参数与实例变量名相同,则需要在实例变量名之前加this关键字,否则系统会将实例变量当成形式参数。
在上面的set方法中,如果形式参数为radius,则需要在成员变量radius之前加上关键字this。
代码如下: public void setRadius(int radius) { this.radius = radius }
2.3对象的初始化和回收
2.3.1构造方法
一种和类同名的特殊方法
用来初始化对象
Java中的每个类都有构造方法,用来初始化该类的一个新的对象
没有定义构造方法的类,系统自动提供默认的构造方法
没有返回类型,修饰符void也不能有
方法重载
一个类中有两个及以上同名的方法,但参数表不同,这种情况就被称为方法重载。
2.3.2内存回收技术
垃圾收集器,finalize()方法
2.4枚举类型
[public] enum 枚举类性名称[implements 接口名称列表] {枚举值;变量成员声明及初始化;方法声明及方法体; }
枚举类型没有public的构造函数
枚举值是public、static、final的。
2.4.1枚举类型的默认方法
#取得枚举值的数组public static T[] values()
#取得枚举值对应的字符串public String toString()
#取得对象在枚举类型中的索引public final int ordinal()
#字符串转换为枚举值public static T valueOf(String)
2.5.2声明toString()方法
2.5.4使用DecimalFormat类
public String toString(){return ("Account#"+accountNumber+"with balance"+new java.text.DecimalFormat("$0.00").format(balance));}
转载于:https://www.cnblogs.com/kmxojer/p/10863322.html
Java复习(二)类与对象的基本概念相关推荐
- 【Java程序设计】类与对象的基本概念(下)
类与对象的基本概念(下) 文章目录 类与对象的基本概念(下) 一.类的访问权限控制 1.访问控制修饰符 (1)默认访问修饰符-不使用任何关键字 (2)私有访问修饰符-private (3)受保护的访问 ...
- 【Java程序设计】类与对象的基本概念(上)
类与对象的基本概念(上) 文章目录 类与对象的基本概念(上) 一.面向对象的基本概念 (1)面向对象程序设计&结构化程序设计 1.结构化程序设计 2.面向对象程序设计 (2)面向对象方法的特性 ...
- java实验二 类和对象
类和对象 [实验目的] 1. 掌握如何定义类. 2. 掌握如何定义类的成员变量.成员方法. 3. 掌握如何创建对象.使用对象. 4. 掌握关键字static的用法. 5. 掌握类成员的访问权限. [实 ...
- 12月29日--Java中有关类与对象的学习记录
1.12月29日第一课记录 Java中有关类与对象的学习记录 一.基本概念部分 1.类:具有相同.相似的属性.特征.行为方式以及功能的一类事物的总称 (举例:一类用户,如淘宝用户) 类是对象的模板 是 ...
- JAVA基础––从类和对象开始
JAVA基础--从类和对象开始 一.概念 1.面向对象中类和对象的概念 对象:对象是具有状态和行为的实体,例如某个具体的学生,或者是王者荣耀里的英雄,可以是物理实体,也可以是逻辑实体. 类:类是一组具 ...
- JAVA中的类和对象之this的详解
系列文章目录 第一章 JAVA中的类和对象之this的详解 目录 前言 一.为什么要有this引用 二.this的三种用法 1.this.成员变量 2.this.成员方法 3.this()调用其它的构 ...
- Java中的类和对象
文章目录 一.类和对象的初步认识 1.1 类和对象的基本概念 1.2 类和类的实例化 二.面向对象的封装性 2.1 封装的基本概念及用法 2.2 getter和setter方法 三.构造方法 3.1 ...
- java基础(类与对象、集合)
java基础(类与对象.集合) 类与对象 类与对象中的栈和堆 构造方法 this关键字 面向对象三大特性 封装性(private) 继承性(extends) 方法重写(@override) 多态性 向 ...
- JAVA基础七 类和对象
文章目录 JAVA基础七 类和对象 01 引用 02 继承 03 方法重载 04 构造方法 05 this 06 传参 07 包 08 访问修饰符 09 类属性 10 类方法 11 属性初始化 12 ...
最新文章
- 柱状图、堆叠柱状图、瀑布图有什么区别?怎样用Python绘制?(附代码)
- JS重复引用也会导致错误
- 计算机三级网络技术查漏补缺
- JZOJ 1980. 【2011集训队出题】Construct
- 综述:编程语言的发展趋势及未来方向
- swift 打开第三方应用_iOS卡通人物帧动画入门9(大结局):番外篇-扩展第三方类
- Linux vi vim 常用快捷键操作(一)
- It企业的上市与退市
- 中国喷墨卡片打印机行业市场供需与战略研究报告
- 导入文件按钮_如何将PPT软件功能配置导入另一台电脑
- Kent Beck 的《测试驱动开发》(TDD) Money示例Ruby版
- hdu1166 敌兵布阵(模板题 单点修改 + 区间查询)
- win7系统wifi没有网络连接到服务器,Win7旗舰版没有无线网络连接怎么办?
- ipa java_Java 解析 IPA 文件,读取 Info.plist 信息
- 计算机网络:CSMA/CD 与 CSMA/CA
- 互联网学习记录:三件套_Javascript
- 深度学习与计算机视觉-6章 Python-OpenCV
- word+正则表达式==快速批量添加图注题注(保姆级图文)
- 学习廖雪峰Git入门教程--总结
- 决策树算法实现:泰坦尼克号乘客生存预测 (python实现)
热门文章
- 附加数据库失败,版本为655,此服务器支持611及更低版本。不支持降级路径。...
- Linux基础知识--进程管理与计划任务
- typescript tslint rules config
- 央视再次点赞阿里云ET城市大脑,树立用人工智能治理城市的标杆
- 分享《组播技术白皮书》
- 编译安装php之安装libiconv-1.14.tar.gz出错解决方法
- 使用ReportStudio打开cube模型创建报表出现两个最细粒度名称
- JavaScript--在页面的下拉框控件中遍历出日期--先天下能力工场
- java集合类详细概述
- 使用TMG2010企业版组建大型***网络之3-配置NLB