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;}}
转载于:https://www.cnblogs.com/hyjj/p/5399018.html
Java中的构造函数和重载相关推荐
- java的constructor怎么用,constructor函数 Java中的构造函数Constructor怎么用
Java中的构造函数Constructor怎么用 注意: 由于Java不允许像C++那样为函数的参数提供缺省值,因此在构造函数中也不能使用缺省值. 构造函数的特点: 1.它的函数名与类名相同: 2.它 ...
- Java重载和重写6_深入理解Java中的重写和重载
深入理解Java中的重写和重载 重载(Overloading)和重写(Overriding)是Java中两个比较重要的概念.但是对于新手来说也比较容易混淆.本文通过两个简单的例子说明了他们之间的区别. ...
- [转载] Java中为什么要有重载现象
参考链接: 重载Java中的main() Java中为什么要有重载现象. 一句话告诉你们"节约词汇". 我们先从生活中的例子来看. 打?你会想到什么.要看宾语是什么. 打球 打孩子 ...
- java构造函数的作用6_谈谈 java 中的构造函数
本篇博文主要是为新手.对java语言感兴趣的人和那些没有系统学习过java基础知识的人进行一个总结,在文章中对构造函数进行了较为详细的说明和讨论,也包含了我个人对于java面向对象中构造函数的一些看法 ...
- C++中复制构造函数与重载赋值操作符
我们都知道,在C++中建立一个类,这个类中肯定会包括构造函数.析构函数.复制构造函数和重载赋值操作:即使在你没有明确定义的情况下,编译器也会给你生成这样的四个函数.例如以下类: class C ...
- java中的重写与重载_java中的重写与重载
1.重写 重写(Override)是父类与子类之间的多态性,实质是对父类的函数进行重新定义,如果在子类中定义某方法与其父类有相同的名称和参数则该方法被重写,不过子类函数的访问修饰权限不能小于父类的:若 ...
- java中构造函数有什么用,java中的构造函数有什么用?用它有什么好处?在什么地方用?...
构造函数是类的一个特殊方法,这个方法用来生成实例时由系统自动调用,程序员无法直接调用.构造函数方法名同类名相同且参数为空.子类继承父类后默认继承父类的构造函数,即:子类存在隐含方法:super(),如 ...
- Java中方法重写和重载的区别
一.方法的重载 - 重载(overloading) 是在一个类里面,方法名字相同,而参数不同.返回类型可以相同也可以不同.每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表. 重载的规则 ...
- 在java中对于构造函数_在Java语言中,下面有关于构造函数的描述正确的是()。
案例分析一:假定CPU的主频是500MHz.硬盘采用DMA方式进行数据传送,其数据传输率为4MB/s, 每次DMA传输的数据量为8KB, 要求没有任何数据传输被错过. 如果CPU在DMA初始化设置和启 ...
最新文章
- JavaScript模式读书笔记 第5章 对象创建模式
- Nature综述:菌根共生的独特性和共性
- 专访Mycat核心开发成员王金剑 :借助Mycat轻松抵御海量并发
- Ubuntu18.04 显卡驱动安装
- String转BigDecimal,BigDecimal常用操作,以及避免踩坑
- 视频编码中封装格式RMVB,AVI,264
- react 用html插件,VSCode拓展插件推荐(HTML、Node、Vue、React开发均适用)-Go语言中文社区...
- D3 interpolate
- 3.2.1 封装成帧、帧定界、帧同步、透明传输(字符计数法、字符串的首尾填充法、零比特填充的首尾标志法、违规编码法)(转载)
- 供应链管理优化和革新八大关键因素
- 先进pid控制matlab仿真_PID控制原理 三 (控制系统硬件选择与仿真)
- 使用构造方法注入和setter注入的配置文件
- 我的世界服务器领地怎么无限大,我的世界:Minecraft都市传说,MC无限大?让我们一起寻找边界吧...
- 【LaTex】LaTex的下载与安装(超详细、超简洁)
- html5制作多彩照片墙,照片墙不是乱贴的,教你1分钟打造高逼格照片墙!
- 基于Edge插件+格式工厂下载B站上的喜欢视频
- 【NOIP2016提高A组五校联考1】挖金矿
- 下载excel打开后弹出警告提示,文件类型和文件内容不符问题处理
- 华硕电脑改光驱启动计算机,华硕笔记本win7系统如何设置光驱为第一启动项
- Apple Developer会员注册以及续订“支付授权失败...”问题
热门文章
- Vue route页面跳转,传递参数接收到的参数为空
- 神仙打架:PG 和 MySQL 到底哪个更好用?
- 厉害了,Spring Cloud Alibaba 发布 GA 版本!
- 深入浅出下一代互联网基础IPFS
- spring security CSRF 问题 Invalid CSRF Token 'null' was found on ......
- 为什么选择Netty作为基础通信组件?
- IDEA中实用的快捷方式
- Spring Boot中文乱码问题怎么解决(按步骤做)
- 图解 Hibernate,session.close(),session.clear()区别
- 问答|数据中心运维管理VIP学习群