java中构造方法的概念和作用
一、概念:
java中构造方法指的是:
与类名相同,无返回类型的方法,参数可以为空,也可以带参数。
比如一个 Dao 类,private Dao(){}这个就是无参数的构造方法。
private Dao(String name){}这个就是带参数的构造方法。
作用:用来初始化 java 类,提供类的初始化和实例化,以便调用。
二、作用
new一个对象的时候要用到构造函数,
例如Hello hello = new Hello();
这时调用的是Hello的无参数构造方法;
Hello hello = new Hello(“hi”);
这个是调用Hello有参数构造方法,在JAVA中如果不写构造方法的话,会默认加上一个无参数的构造方法,
但是如果已经有了一个有参数的构造方法,那么无参数的构造方法就不会默认被加上.
如果Hello类中已经有了一个有参数的构造方法,这时再使用Hello hello = new Hello();来创建对象的时候就会出错,
这就是为什么书上要强调写了有参数的构造方法就最好加一个无参数的构造方法。
三、区别
有参数的构造方法的主要目的是为类中的属性初始化的,而无参数的构造方法,可以控制new对象。
假设你的无参构造方法不是public 修饰 而是project ,
那么别人将不只能直接new一个对象,这就起到了控制作用。
为什么要自动生成无参构造呢?
你没有构造方法就不能new出对象 所以就给你生成一个无参构造方法
一般构造方法就是来控制你new对象的 还有就是初始化属性##
java中构造方法的概念和作用相关推荐
- java中构造方法的特征及其作用
Java中构造方法的定义和作用 构造方法的特征 • 它具有与类相同的名称: • 它不含返回值: • 它不能在方法中用 return 语句返回一个值: • 当自定义了构造方法后,编译器将不再自动创建不带 ...
- java中包的概念及作用_Java中包的概念和使用实战
一点睛 1 package的声明方法: packagepackage名称[.package名称2.package名称3]; 2 包的导入方法如下: importpackage包名称.类名称 3如果一个 ...
- java 构造方法特点_简述 Java 中构造方法 的概念及特点。_市场营销知识答案_学小易找答案...
[判断题]376 . 宽松裤后腰围计算公式为 W/4-1+ 省. [判断题]365 . 鱼尾裙的展宽高度与裙造型变化有关系.( ) [判断题]361 . 服装结构制图中的某些部位.线条.点等常使用其英 ...
- java中构造方法和方法全面解析
java中构造方法和方法全面解析 我相信大多说人都对构造方法.方法不陌生,而且很了解,但我也相信有很多像我这样的没有一个很好很清晰很全面的认识,今天就把它整理如下,希望能给大家带来点方便与帮助,也希望 ...
- Java 中finalize()方法起什么作用呢?
转自: Java 中finalize()方法起什么作用呢? Java之finalize()方法功能说明 当我们在一个类中定义了finalize()方法时, 如果一个对象被垃圾收集器析构(回收)之前,则 ...
- java中string.trim()函数的作用
java中string.trim()函数的作用 trim的中文含义是修剪,通过其字面意思,我们不难理解这个函数是对字符串进行一定程度的修改删除.那么,具体是如何实现的呢? public static ...
- java中冒号运算符起什么作用呢?
转自: java中冒号运算符起什么作用呢? 下文笔者讲述java中冒号运算符的功能简介说明,如下所示: 冒号运算符的功能: 1.跳转2.三元表达式3.迭代循环4.断言5.switch6.方法(jdk8 ...
- Java中构造方法的作用
初学Java的构造方法时,根本不能理解构造方法有什么用,自己写程序的时候也从来没有用过.于是刚开始我写的程序是这样的: package test3: public class Student {pri ...
- java中构造方法的作用是什么(非原创)
初学Java的构造方法时,根本不能理解构造方法有什么用,自己写程序的时候也从来没有用过.于是刚开始我写的程序是这样的: package test3: public class Student {pri ...
最新文章
- 说到心里的哲理个性签名 学生时代的恋爱无非就是陪伴二字
- 基于suse linux系统的cacti系统部署——rpm包方式
- oracle idm suite,CorelDRAW Graphics Suite 2018官方英文试用版 离线直接安装 下载地址
- Python 生成exe文件报错:ImportError: unable to find Qt5Core.dll on PATH
- Redis开发:发布/订阅消息示例
- P2700 逐个击破
- sobel算子_OpenCV 学习:4 Sobel算子
- IO多路复用之select
- java学习(2):学生管理系统2
- linux多线程冗余,Linux 下的路径冗余
- 将MongoDB.NET驱动程序与.NET Core WebAPI一起使用
- 从.fig文件中提取数据
- Django表单提交数据与网页跳转
- qt 使用msvc编译器出现中文乱码的问题
- 发那可g10_对FANUC系统中G10指令的使用心得
- 笔记本系统恢复连载之九:神舟笔记本系统恢复
- 武神主宰中的科幻理论体系设定
- html英文颜色大全,html英文颜色名称全集
- Python批量删除文件名中带小括号数字(1)(2)(3)...
- antd源码-spin解析