《Java面向对象编程》
《Java面向对象编程》
第11章 对象的生命周期
11.1 创建对象的方式
- 用new语句创建对象
- 运用反射手段,调用java.lang.Class 或者 java.lang.Constructor 类的newInstance()实例方法。
- 调用对象的clone()方法。
- 运用反序列化手段
11.2 构造方法
在多数情况下,初始化对象的最终步骤是去调用这个对象的构造方法。构造方法负责对象的初始化工作,为实例变量赋予合适的初始化值。
构造方法满足的语法规则:
- 方法名必须与类名相同
public class Sample{
private int x;
public Sample(){ //不带参数的构造方法
this(1);
}
public Sample(int x){ //带参数的构造方法
this.x = x;
} public int Sample(int x ){ //不是构造方法
return x++;
} } - 不要声明返回类型
- 不能被static,final,synchronized,abstract和native修饰
构造方法不能被子类继承,所以用final和abstract修饰没有意义。
构造方法用于初始化一个新建的对象,所以用static修饰没有意义。
多个线程不会不会同时创建内存地址相同的同一个对象,因此用synchronized修饰没有意义。
此外,java语言不支持native类型的构造方法。
第15章 Java集合
Java数组的长度是固定的,在同一个数组中只能存放相同类型的数据。数组可以存放基本类型的数据,也可以存放引用类型的数据。在创建数组时,必须指明数组的长度,数组一旦被创建,其长度就不能被改变。在许多应用场合,一组数据的数目是不固定的,比如一个单位的员工数目是变化的,有老员工个跳槽,也有新员工的加入。
为了使程序能方便的存储和操纵数目不固定的一组数据,JDK类库提供了Java集合,所有Java集合类都位于java,util包中。与Java数组不同,Java集合中不能存放基本数据类型,而只能存放对象的引用。为了便利:“集合中对象的引用”简称为“集合中的对象”
Java中的集合主要分为4种类型:
- set(集):集合中的对象不按特定方式排序,并且没有重复的对象。它的有些实现类能对集合中的对象按特定方式排序。
- List(列表):集合中的对象按照索引位置排序,可以有重复的对象,允许按照对象在集合中的索引位置检索对象。List与数组有些相似。
- Queue(队列):集合中的对象按照先进先出的规则来排列。在队列的末尾添加元素,在队列的头部删除元素。可以有重复的对象。双向队列则允许在队列的末尾和头部添加和删除元素。
- Map(映射):集合中的每一个元素包含一对键(Key)对象和值(Value)对想,集合中没有重复的键对象,值对象可以重复。它的有些实现类能对集合中的键对象进行排序。

Java集合的4种类型
《Java面向对象编程》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- AD绘制PCB时,贴片封装器件的焊盘间距小于10Mil,报错解决
Design->Rules->Manufacturing->Minimum Solder Mask Sliver
- (转)C# Assembly.Load 使用
在C#中,我们要使用反射,首先要搞清楚以下命名空间中几个类的关系: System.Reflection命名空间(1) AppDomain:应用程序域,可以将其理解为一组程序集的逻辑容器(2) As ...
- v891 安卓平板的root
看了 油管的视频,标题:Onda V891 - Root Android 4.4.4 (Kit Kat) 2)下载工具,照着做就行了. 3)root完之后,安装 [钛备份](TitaniumBacku ...
- GrindEQ Math Utilities 2015破解版 图文安装和序列号补丁激活教程
GrindEQ Math Utilities 2015破解版 图文安装和序列号补丁激活教程 https://www.sdbeta.com/mf/2018/1002/226048.html 软件下载: ...
- GenomicConsensus (quiver, arrow)使用方法 | 序列 consensus
https://github.com/PacificBiosciences/GenomicConsensus GenomicConsensus 是pacbio开发的,我个人非常不喜欢pacbio开发的 ...
- every day a practice —— morning(4)
If there’s one thing New Yorkers love more than discovering a new secret remedy, it’s telling other ...
- Confluence 6 为一个空间应用一个主题
主题允许你对 Confluence 的外表和显示进行自定义.你的 Confluence 空间管理员可以到 The Atlassian Marketplace 上下载主题. 一旦一个主题被安装到 Con ...
- vue组件,axios ,路由
组件(Component)自定义封装的功能. 把一个功能相关的[HTML.css和javascript]代码封装在一起组成一个整体的代码块封装模式,我们称之为“组件”. 组件就是一个html网页中的功 ...
- selenium配置Chrome驱动
1.http://chromedriver.storage.googleapis.com/index.html chrome下载驱动地址 和对应的版本驱动,不用FQ 2.配置方法:如在e盘创建一个 ...
- layui 导出表格数据
第一种方法没试过,有机会要试试.