一)、构造方法: 

  在之前我们提到对象的概念以及对象的实例化等,在这里简单回顾下:

  Man man = new Man();

  语句创建一个对象,new可以理解成创建一个对象的关键字,通过new关键字为对象分配内存,初始化实例变量,并调用构造方法。

  Man()形式上和调用方法相同,而这个Man()就是一个特殊的方法叫做构造方法;

  构造方法在代码中并没有看到这个方法的定义原因是在没有定义构造方法的时候,JAVA会隐式的创建一个无参的默认构造方法

  构造方法有以下几个特征:1、具有和类相同的名称;2、不含有返回值;3、不能在方法中使用return返回一个值

  在一个类中具有上述特征的方法就是构造方法。

  在这里需要特别注意的是,在构造方法里不含返回值的概念不同于void,依然以Man类为例,public Man(){}是构造方法,如果写成public void Man(){};就不是构造方法了。

  示例:

/**
* 构造方法
**/
public person(String eat, String sleep, String speak)
{
this.EAT= eat;
this.SLEEP= sleep;
this.SPEAK= speak;
}
/**
* 非构造方法
**/
public void Man(){
System.out.println("输出~") ;
}

  构造方法一共分为两类,一类是当程序没有定义构造方法时,系统自己生成的默认的构造方法,这个默认的构造方法没有参数,方法体中也没有任何代码,即什么也不做,但是会对类成员变量进行默认的初始化。

  另一类是程序自己定义的构造方法,可以根据自己的要求对类成员变量进行初始化,也叫做参数化构造方法。需要注意:一旦程序自己定义了构造方法,系统就不会创建默认的构造方法了。

  在构造方法中常用到关键字 this ,this 表示的是当前对象,如在同一个类中成员调用类中其他成员;如构造方法使用this关键字为当前成员变量赋值;

  this 关键字既可以访问当前对象的数据成员,也可以访问当前对象的成员方法;

二)、对象的生命周期:

  类定义之后,只是产生了对事物的描述,并没有生成事物的实例。所以必须对类进行实例化,来生成客观事物的内存映像,这就是对象的创建。对象创建之后必定要显示它的一些特征和表现一些行为,这就是对象的使用。当对象不再使用时(没有任何引用变量指向它时),对象就变成了垃圾,这就是对象的消亡。

  当程序的某个部件完成使命后,程序员往往弃之不顾,这是很危险的,这些垃圾会占用系统资源,造成内存泄漏等,所以清理垃圾是必要的。Java垃圾回收的偶然性,如果在一个对象成为垃圾时需要马上释放,可以使用System.gc();来强制启动垃圾回收器回收垃圾。

Java基础-8构造方法的更多相关文章

  1. Java基础—String构造方法

    Java基础--String构造方法 public String(): 创建一个空表字符串对象,不包含任何内容 public String(char[]chs): 根据字符数组的内容,来创建字符串对象 ...

  2. java基础知识 构造方法

    在java里面,构造方法也就是构造函数 构造函数=构造方法;构造方法是一种特殊的方法,具有以下特点.(1)构造方法的方法名必须与类名相同.(2)构造方法没有返回类型,也不能定义为void,在方法名前面 ...

  3. java基础(12):构造方法、this、super

    1. 构造方法 我们对封装已经有了基本的了解,接下来我们来看一个新的问题,依然以Person为例,由于Person中的属性都被private了,外界无法直接访问属性,必须对外提供相应的set和get方 ...

  4. 【BigData】Java基础_构造方法的使用

    需求描述 实现上图需求,根据输入的三个人的信息,分别计算出这个三个客户的平均年龄和最大年龄 涉及知识点: ①构造方法 ②字符串切割 ③对象数组 代码实现 代码结构图: package cn.test. ...

  5. 【Java基础】构造方法调用构造方法

    从一个程序开始: class dog { private String name; private String color; private int age; dog(String name) // ...

  6. Java基础 - 面向对象 - 构造方法

    在类中除了成员方法之外,还存在一种特殊类型的方法,那就是构造方法.构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的.每当类实例化一个对象时,类都会自动调用构造方法. 构造方法的特点: 构 ...

  7. Java基础之构造方法及其应用

    构造方法是一种特殊的方法,它是一个与类同名且无返回值类型(连void也不能有)的方法. 对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化. 当类实例化一个对象时会自动调用构造方法.构造方 ...

  8. 【Java基础】构造方法 static 块 {}块 执行顺序

    package com.test.innerclass; public class HelloB extends HelloA { public HelloB() { System.out.print ...

  9. 085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用

    085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用 本文知识点:构造方法调用 说明:因为时间紧张,本人写博客过程中只是 ...

随机推荐

  1. 二维码生成的WEB api方法

    /// <summary> /// 获取二维码 /// </summary> /// <param name="size">编码测量度,值越大生 ...

  2. POJ-1159 Palindrome---变成回文串的最小代价

    题目链接: https://cn.vjudge.net/problem/POJ-1159 题目大意: 题意很明确,给你一个字符串,可在任意位置添加字符,最少再添加几个字符,可以使这个字符串成为回文字符 ...

  3. 转:spring mvc返回json数据格式

    转:http://www.cnblogs.com/ssslinppp/p/4675495.html <Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: ...

  4. 4. NBU文件备份与恢复,图形界面&字符界面操作

    一. 图形界面文件备份与恢复 1.1  文件备份 待补充 1.2 Windows文件恢复 (1) 打开恢复客户端 (2) 检查设置 (3) 查询可恢复信息 (4) 选取恢复时间点和文件 (5) 选择恢 ...

  5. vue 中$index $key 已经移除了

    https://cn.vuejs.org/v2/guide/migration.html#index-and-key-移除 之前可以这样: 1 2 3 4 5 6 <ul id="ex ...

  6. cutil.h问题

    CUDA5.0没有cutil.h头文件,貌似用helper_cuda.h文件代替,暂时没出问题.

  7. css中hover设置边框后div中内容后移解决方法

    <style> .demo{width:1200px;height:400px;background:#fff;} .demo:hover{border:1px solid #cecece ...

  8. MySQL-常用的存储引擎

    MySQL-常用的存储引擎 存储引擎 事务 锁粒度 主要应用 忌用 MyISAM 不支持 支持并发插入的表级锁 select,insert 读写操作频繁 MRG_MYISAM 不支持 支持并发插入的表 ...

  9. Centos下使用Docker部署asp.net core项目

    本文讲述 CentOS 系统 Docker 中部署 asp.net core开源项目 abp 的过程 步骤 1. 拉取 asp.net core 基础镜像 docker pull microsoft/ ...

  10. spring cloud 学习之 服务注册和发现(Eureka)

    一:服务注册和发现(Eureka) 1:采用Eureka作为服务注册和发现组件 2:Eureka 项目中 主要在启动类加上 注解@EnableEurekaServer @SpringBootAppli ...