java构造器 默认构造方法及参数化构造方法

网友投稿 304 2022-09-23


java构造器 默认构造方法及参数化构造方法

目录1、构造器1.1 权限修饰符是public1.2 显示定义构造器

1、构造器

构造器也叫构造方法、构造函数,是一种特殊类型的方法,负责类中成员变量(域)的初始化。构造器的用处是在创建对象时执行初始化,当创建一个对象时,系统会为这个对象的实例进行默认的初始化。

有两种类型的构造方法:

1、默认构造方法(无参数构造方法)

2、参数化构造方法

1.1 权限修饰符是public

权限修饰符是public,表示内部属性能被其他类访问到。

java默认的构造方法是无参的。

Java编译器会自动创建无参构造函数,因此在类中,无参构造即使没有,我们也可省略不写。实例化对象时无需赋值

新建一个Person类,再用new实例化person对象。运行后会生成一个Person.class对象。

public class Demo02 {

public static void main(String[] args) {

//new 实例化一个对象

//一个类就算什么也不写,也存在一个方法,且方法名与类名相同。

Person p=new Person();创建对象,括号内无需赋值,没赋值的情况下,字符类型默认值为null,数值类型默认值为0

}

}

public class Person {

}

若类中什么也不写,运行之后,默认多一个Person()方法,下面是Person.class的代码:

//

// Source code recreated from a .class file by IntelliJ IDEA

// (powered by Fernflower decompiler)

//

package Demo01;

public class Person {

public Person() {

}

}

故:一个类就算什么也不写,他也会存在一个默认的方法

参数化构造方法:

参数化构造方法用于为不同对象提供不同初始化的值。

倘若类中已存在有参构造函数,则编译器不再提供默认无参构造。实例化对象时需赋值,不然报错

1.2 显示定义构造器

package Demo01;

public class Demo02 {

public static void main(String[] args) {

//new 实例化一个对象

//一个类就算什么也不写,也存在一个方法,且方法名与类名相同。

Person p=new Person();

System.out.println(p.name);//null

}

}

package Demo01;

public class Person {

String name;

//实例化初始值

//1、使用new关键字,本质实在构造器

//2、用来初始化值

public Person(){//默认构造器

this.name="xiaoming";

}

//有参构造:一旦定义了有参构造,无参构造就必须显示定义,否则无效,也是重载

public Person(String name){

this.name=name;

}

//快捷键: alt + insert 生成构造器,自动生成构造器,有参无参可自行选择。

}

总结:

构造器:

1、和类名相同

2、没有返回值

作用:

1、new 本质在调用构造方法

2、初始化对象的值

注意:定义构造之后,如果想使用无参构造,显示的定义一个无参构造,否则不能使用无参的构造方法ALT + INSERT 生成构造器


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:网工基础TCP/IP协议栈(TCPI/P DHCP ICMP ARP 掩码计算)(TCP/IP协议栈有哪些协议)
下一篇:【数通面试私房菜之BGP专题】第一期:BGP邻居建立过程
相关文章

 发表评论

暂时没有评论,来抢沙发吧~