Java中的构造函数和重载
一.Java中的构造函数
构造函数是对象被创建时初始化对象的成员方法,它具有和它所在的类完全一样的名字。构造函数只能有入口参数,没有返回类型,因为一个类的构造方法的返回类就是类本身。构造函数定义后,创建对象时就会自动调用它,对新创建的对象分配内存空间和初始化。在 Java 中,构造函数也可以重载,当创建一个对象时, JVM 会自动根据当前对方法的调用形式在类的定义中匹配形式符合的构造方法,匹配成功后执行该构造方法。
eg:
public Class Dog { private int age; private String name; //无参构造 public Dog(){} //带参构造:用于给类中的属性赋值 public Dog(int age,string name) { this.age=age; this.name=name; } }
二.Java中默认构造
如果省略构造方法的定义,则 Java 会自动调用默认的构造方法。但是如果定义了构造方法,则系统不再提供默认的构造方法。默认的构造方法没有任何参数,不执行任何操作。实际上,默认的构造方法的功能是调用此类的父类中的不带参数的那个构造方法,如果父类中不存在这样的构造方法,编译时会产生错误信息。 Object 是 Java 中所有类的根,定义它的直接子类,可以省略 extends 子句,编译器会自动包含它。
三.方法重载
方法名称相同,参数项不相同。那么认为一个方法是另一个方法的重载方法。
注意:重载只跟参数有关,与返回类型无关。方法名和参数相同而返回类型不相同,不能说是重载。
public void Say(int age){}
public int Say(int age,string name){}
public String Say(String name,String age){}
四.构造方法重载
构造方法重载是方法重载的一个典型的特例。参数列表不同。
可以通过重载构造方法来表达对象的各种多种初始化行为。也就是说在通过new语句创建一个对象时,可以实现在不同的条件下,让不同的对象具有不同的初始化行为。
public Class Text { Private String name; Private String sex; Public Text(String name){ this.name=name; } Public Text(String name,String sex){ this.name=name; this.sex=sex; } }
Java中的构造函数和重载的更多相关文章
- Java中的构造函数——通过示例学习Java编程(14)
作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=25 构造函数是用来初始化新创建的对象的代码块. ...
- C++中复制构造函数与重载赋值操作符总结
前言 这篇文章将对C++中复制构造函数和重载赋值操作符进行总结,包括以下内容: 1.复制构造函数和重载赋值操作符的定义: 2.复制构造函数和重载赋值操作符的调用时机: 3.复制构造函数和重载赋值操作符 ...
- Java中有关构造函数的一道笔试题解析
Java中有关构造函数的一道笔试题解析 1.详细题目例如以下 下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与c ...
- 谈谈java中的构造函数
from 本篇博文主要是为新手.对java语言感兴趣的人和那些没有系统学习过java基础知识的人进行一个总结,在文章中对构造函数进行了较为详细的说明和讨论,也包含了我个人对于java面向对象中构造函数 ...
- C++中复制构造函数与重载赋值操作符
我们都知道,在C++中建立一个类,这个类中肯定会包括构造函数.析构函数.复制构造函数和重载赋值操作:即使在你没有明确定义的情况下,编译器也会给你生成这样的四个函数.例如以下类: class CTe ...
- 4.JAVA基础复习——JAVA中的构造函数与this关键字
构造函数:构建创造对象时调用的函数 特点: 1.函数名与类名相同. 2.不用定义返回值类型. 3.没有具体的返回值. public class Demo { private int age; priv ...
- 简单的描述Java中的构造函数,及访问修饰符
作为一个Java 初学者,对Java的理解可能有些片面,甚至有些错误的理解,对于观看此处的您,希望您选择性观看!!! 访问修饰符: 1.常用访问修饰符: public 共有的 private 私有的 ...
- java中的构造函数
在c++中就学习了构造函数,今天学习java又碰到了构造函数,重新写一篇博客来理解一下 其实直接听这个词并不能理解这是什么,但其实看了它的作用,就很好理解了 当创建一个对象时,往往需要做一些初始化工作 ...
- 关于java中private构造函数的问题
首先推荐以下下面的一篇博客: http://blog.csdn.net/my_dream_fly/article/details/3857887 本来也比较好奇,自己写构造函数总是定义public形式 ...
随机推荐
- HoloLens开发手记 - Unity之语音输入
对于HoloLens,语音输入是三大基本输入方式之一,广泛地运用在各种交互中.HoloLens上语音输入有三种形式,分别是: 语音命令 Voice Command 听写 Diction 语法识别 Gr ...
- Common Lisp编译程序的小技巧
这几天开始玩Common Lisp,遇上了一个有意思的问题,CL一般是解释运行,也有实现可以编译生成字节码(fas文件).我正在用的两种CL实现是SBCL和CLISP,前者是我从<实用Commo ...
- CSS3之过渡Transition
CSS3中的过渡Transition有四个中心属性:transition-property.transition-duration.transition-delay和transition-timing ...
- sql-in/not in和exists/not exists的区别
In和Exists的区别 这两个函数是差不多的,但由于优化方案不同,通常NOT Exists要比NOT IN要快,因为NOT EXISTS可以使用结合算法二NOT IN就不行了,而EXISTS则不如I ...
- 【HDU 2577】How to Type
题意 (我做了这题才知道caps lock 锁定大小写后,按一下shift键可以输入相反的大小写.) 这题就是给你只有大小写字母的字符串,求最少多少次按键盘.最后caps lock 必须是关闭的. 分 ...
- BIEE 后台新建分析没有你创建的数据源
(1)登录http://win-5rnnibkasrt:9704/analytics/saw.dll?bieehome 点击“管理” 找到“发出SQL语句”在里面写call sapurgeallca ...
- java2集合框架的一些个人分析和理解
Java2中的集合框架是广为人知的,本文打算从几个方面来说说自己对这个框架的理解. 下图是java.util.Collection的类图(基本完整,有些接口如集合类均实现的Cloneable.Seri ...
- NOI题库-小学奥赛QwQ
今天Loli教育我们让我们来看看NOI题库的奥赛部分,不过,为何是小学的( ⊙ o ⊙ )啊!感觉智商被各种侮辱. 余数相同问题: 描述 已知三个正整数 a,b,c. 现有一个大于1的整数x,将其作为 ...
- 【poj1201】 Intervals
http://poj.org/problem?id=1201 (题目链接) 题意 给出n个区间${[ai,bi]}$,要求选出尽可能少的数,使得每个区间i中至少存在${c[i]}$个数. Soluti ...
- java 中LinkedList的学习
Java中,所有链表实际上都是双向链表的,即每个结点还存放在着指向前驱结点的引用. LinkedList中的contains方法检测某个元素是否出现在链表中. LinkedList类提供了一个用来访问 ...