Java有参构造方法和无参构造方法
Java有参构造方法和无参构造方法
1**、定义:**
- 编写一个类时没有添加无参构造方法,那么编译器会自动添加无参构造方法;(如果自己添加构造函数,无论有参数或是没参数,默认构造函数都将无效)
- 编写时添加了有参构造方法而未添加无参构造方法,那么编译器只认有参构造方法而不会默认添加无参构造方法!
- 如果需要使用无参构造方法,一定要在类里面添加
2、举例:
定义四个类(说明四种情况):
类Person1 自己不手动添加任何无参或有参数构造方法 (实例化对象时:编译通过)
类Person2 自己添加无参的构造方法 (实例化对象时:编译通过)
类Person3 有参数的构造方法 (实例化对象时:不通过)
类Person4 自己添加无参的构造方法,和有参数的构造方法 (实例化对象时:编译通过)
//定义类Person1 自己不手动添加任何无参或有参数构造方法class Person1{private int age;private String name;private String sex;}//定义类Person2 自己添加无参的构造方法class Person2{private int age;private String name;private String sex;public Person2(){System.out.println("无参构造方法被调用");}
}//定义类Person3 有参数的构造方法class Person3{private int age;private String name;private String sex;public Person3(String name, String sex, int age ){this.name = name;this.sex = sex;this.age = age;}
}//定义类Person4 自己添加无参的构造方法,和有参数的构造方法class Person4{private int age;private String name;private String sex;//不带参数的构造函数,可以被重载public Person4(){System.out.println("无参构造方法被调用");}//带参数对的构造函数public Person4(String name, String sex, int age ){this.name = name;this.sex = sex;this.age = age;}
}public class ObjectInit_2 {public static void main(String[] args) {Person1 person1 = new Person1();//编译通过;①实例化Person对象 ②自动调用构造方法Person( )Person2 person2 = new Person2();//编译通过;打印: 无参构造方法被调用// 这样写,编译器会报错,原因是系统默认的无参构造方法被有参构造方法覆盖,编译器不能再提供无参构造方法Person3 person3 = new Person3();//Person4 person4 = new Person4();//编译通过;打印: 无参构造方法被调用Person4 person4 = new Person4("qzz", "man", 18);//编译通过;}
}
2018.10.29/周一by 922
Java有参构造方法和无参构造方法相关推荐
- java构造方法:有参构造方法和无参构造方法区别
java构造方法:有参构造方法和无参构造方法 一.无参构造方法 1.定义: 如果编写一个javaBean时没有添加无参构造方法,那么编译器会自动添加无参构造方法: 但是如果编写时添加了有参构造方法而未 ...
- java无参构造赋值怎么没用_Java有参构造方法和无参构造方法详解
一:有参数构造方法 在之前我们要为一个对象赋值,先要创建好对象之后然后"对象名.属性名"或者调用属性的setter为属性赋值.但是在很多时候觉得这样做很麻烦,最好的做法是在创建对象 ...
- Java有参构造方法和无参构造方法详解
一:有参数构造方法 在之前我们要为一个对象赋值,先要创建好对象之后然后"对象名.属性名"或者调用属性的setter为属性赋值.但是在很多时候觉得这样做很麻烦,最好的做法是在创建对象 ...
- 为什么要有无参构造方法,无参构造的运行原理
本文参考链接:https://blog.csdn.net/Akanarika520/article/details/84927403 无参构造器也叫无参构造方法,在我们创建类时候,可以不用写构造方法, ...
- Java有参构造和无参构造
⭕️前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家(点击跳转到网站)⭕️ 类与对象的创建 图片左侧代码 package oop.demo02; //学生类(一个类里面 ...
- 有参构造法和无参构造法
有参构造法和无参构造法 为什么需要构造方法? 1.通过一个一个初始化成员变量非常麻烦 Java设计了构造方法 快捷键为alt + shift + s 再按 O 构造方法的格式: [访问权限修饰符] 方 ...
- Random类有参构造和无参构造的区别
Random类有参构造和无参构造的区别 构造方法 public Random();//没有给种子,用的是默认种子,默认当前时间的毫秒值 public Random(long seed);//给定指定的 ...
- c/c++教程 - 2.4.2.1~2 对象的初始化和清理,构造函数和析构函数,构造函数的分类和调用(有参构造,无参构造,普通构造,拷贝构造,括号法,显示法,隐式转换法,匿名对象)
目录 4.2 对象的初始化和清理 4.2.1 构造函数和析构函数 4.2.2 构造函数的分类及调用 相关教程 4.2 对象的初始化和清理 生活中我们买的电子产品都基本会有出厂设置,在某一天我们不用时候 ...
- 宏基因组有参分析和无参分析差异
宏基因组有参分析和无参分析差异 分析流程 解决问题 结果差异 宏基因组流程综述 本文参考 宏基因组教程Metagenomics Tutorial (HUMAnN2) 分析流程 有参流程:质控–物种组成 ...
最新文章
- window 服务(二)
- admui 能再php上用吗,Javascript 方法
- HTML标签meta在seo中的作用
- 随机森林c语言编程,一种基于随机森林的C语言源代码静态评分方法与流程
- 新入职一家公司如何梳理业务?
- oracle的环境配置-基本配置
- Java 并发(JUC 包-01)
- 常用excel函数 vlookup,concatenate, 的使用
- SQL Server 作业监控
- 国产杀毒软件连续因“作弊”遭全球权威评测机构指责
- linux中 ECShop的文件不能写
- 公交驾校自动约车脚本
- 气象大数据与预报准确率
- mac虚拟机搭建设置静态ip
- 如何找到合适的分辨率-电脑扩展屏分辨率低
- MQTT系列 | Retained消息和LWT和Keep Alive
- pycharm插件translation 更新TTK失败,请检查网络连接的解决办法
- 易语言注册机接码平台对接
- Edge浏览器崩溃,错误代码: STATUS_STACK_BUFFER_OVERRUN
- 开始iOS 7中自动布局教程(二)