使用原因:在通过无参构造方法实例化对象时,如果有属性可以设置默认值,可通过在无参构造方法中使用this()调用有参构造方法实现。

this()需要写在无参构造方法的第一行!

例子:在没有给出小猫的名字和爪子个数是;默认名字是小喵,爪子个数4个。

public class Cat {
String name;
int paw; public Cat(String name,int paw){    this.name = name;
this.paw = paw;
} public Cat() {
this("小喵",4);
} public static void main(String[] args) {
Cat cat = new Cat();
System.out.println(cat.name+cat.paw);
}

通过this()调用有参构造方法的更多相关文章

  1. Java中什么是匿名对象,空参构造方法输出创建了几个匿名对象,属性声明成static

    package com.swift; //使用无参构造方法自动生成对象,序号不断自增 public class Person { private static int count; //如果在定义类时 ...

  2. Apache Commons Digester 二(规则模块绑定-RulesModule、异步解析-asyncParse、xml变量Substitutor、带参构造方法)

    前言 上一篇对Digester做了基本介绍,也已经了解了Digester的基本使用方法,接下来将继续学习其相关特性,本篇主要涉及以下几个内容: 规则模块绑定,通过定义一个RulesModule接口实现 ...

  3. 使用super调用父类的构造方法

    package com.bjpowernode.t02inheritance.c09; /* * 使用super调用父类的构造方法 */public class TestSuper02 { publi ...

  4. 记lombok@Data和@Builder一起用无法添加无参构造方法的坑

    转自:https://blog.csdn.net/w605283073/article/details/89221853 今天和小伙伴讨论一个mybatis-plus的一个诡异问题,最后定位到原因竟然 ...

  5. Java ——补充:构造方法 super()与构造方法 无参 有参构造方法 this()与构造方法

    参考文章: https://blog.csdn.net/qq_33322074/article/details/86030836 https://blog.csdn.net/HD243608836/a ...

  6. 继承内部类时使用外部类对象.super()调用内部类的构造方法

    问题简介   今天在看<Java编程思想>的时候,看到了一个很特殊的语法,懵逼了半天--一个派生类继承自一个内部类,想要创建这个派生类的对象,首先得创建其父类的对象,也就是这个内部类,而调 ...

  7. Fragment为什么须要无参构造方法

    日前在项目代码里遇到偷懒使用重写Fragment带参构造方法来传参的做法,顿生好奇,继承android.support.v4.app.Fragment而又不写无参构造方法不是会出现lint错误编译不通 ...

  8. 082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法

    082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法 本文知识点:构造方法-无参构造方法 说明:因为时间紧张, ...

  9. Android(java)学习笔记107-1:通过反射获得带参构造方法并且使用

    反射获得带参构造方法并且使用: 1. 获取字节码文件对象       Class c = Class.forName("cn.itcast_01.Person"); 2.获取带参构 ...

随机推荐

  1. MyBatis笔记----mybatis分页

    mybatis版本3.4以下 结构 spring-mvc.xml <?xml version="1.0" encoding="UTF-8"?> &l ...

  2. 用emacs 阅读 c/c++ 代码

    在emacs编程中有以下需求 从调用一个函数的地方跳转到函数的定义的地方 或是反过来从函数定义的地方列出所有调用这个函数的地方 实现办法 需要安装以下软件 gnu global(阅读源代码的工具)官网 ...

  3. 网站出现403 Forbidden

    1, 你在一定时间内过多地访问此网站(一般是用采集程序),被防火墙拒绝访问了 2, 网站域名解析到了空间,但空间未绑定此域名 3, 你的网页脚本文件在当前目录下没有执行权限 4, 服务器繁忙,同一IP ...

  4. Quartz简答介绍

    引言 Quartz是开源任务调度框架中的翘楚,提供了强大的任务调度机制.Quartz允许开发人员灵活地定义触发器的调度时间表,并可对触发器和任务进行关联映射.此外,Quartz提供了调度运行环境的持久 ...

  5. sftpdrive mtputty

    https://blog.csdn.net/junli_chen/article/details/77527250?locationNum=2&fps=1

  6. 比MR至少快5倍的神器,竟然是它

    Hive简介 Hive是一个基于 Hadoop 的开源数据仓库工具,用于存储和处理海量结构化数据.它最初是应Facebook对每天产生的海量新兴社会网络数据进行管理和机器学习的需求而产生和发展的,Hi ...

  7. 自适应:用JS做的自适应,是最差的自适应,记页面刷新前后尺寸变化

    今天遇到一个硬茬,我在使用weui重构一个页面时,出现一个问题:路由进入页面时,页面内容尺寸硬是会变大,刷新后又恢复正常: 项目背景:一个使用react-starter-kit构建的B端SPA项目 上 ...

  8. 发现一种写法,类似callback&&callback()

    与callback&&callback()异曲同工 return data && { title: `To-do (${data.length})`, componen ...

  9. 【NOI2018模拟5】三角剖分Bsh

    [NOI2018模拟5]三角剖分Bsh Description 给定一个正 n 边形及其三角剖分,共 2n - 3 条边 (n条多边形的边和n-3 条对角线),每条边的长度为 1. 共 q 次询问,每 ...

  10. 「AHOI / HNOI2017」影魔

    「AHOI / HNOI2017」影魔 题目描述 解决这类比较复杂的区间贡献问题关键在于找到计算的对象. 比如这道题,我们计算的对象就是区间中间的最大值. 对于点\(i\),我们找到左边第一个比他大的 ...