构造函数是一种特殊的函数。其主要功能是用来在创建对象时初始化对象, 即为v对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。构造函数与类名相同,可重载多个不同的构造函数。在JAVA语言中,构造函数与C++语言中的构造函数相同,JAVA语言中普遍称之为构造方法。
使用构造器时需要记住:
1.构造器必须与类同名(如果一个源文件中有多个类,那么构造器必须与公共类同名)
2.每个类可以有一个以上的构造器
3.构造器可以有0个、1个或1个以上的参数
4.构造器没有返回值
5.构造器总是伴随着new操作一起调用
示例:
A.java
Java代码
public class A{ public A(){ System.out.println("调用了无参的构造函数"); } public A(String mess){ System.out.println("调用了有参的构造函数\n"+ "参数内容为:"+mess); } }
Test.java
Java代码
public class Test{ public static void main(String [] args){ A a_1=new A();//调用无参的构造函数 A a_2=new A("Hello");//调用有参的构造函数 } }
输出结果:
继承与构造函数
使用super调用父类构造器的语句必须是子类构造器的第一条语句
如果子类构造器没有显式地调用父类的构造器,则将自动调用父类的默认(没有参数)的构造器。如果父类没有不带参数的构造器,并且在子类的构造器中又没有显式地调用父类的构造器,则java编译器将报告错误
示例:
A.java
Java代码
public class A{ public A(){ System.out.println("调用了A的无参构造函数"); } public A(String mess){ System.out.println("调用了A的有参的构造函数\n"+ "参数内容为:"+mess); } }
B.java
Java代码
public class B extends A{ public B(){ System.out.println("调用了B的无参构造函数"); } public B(String mess){ super(mess); System.out.println("调用了B的有参构造函数\n"+ "参数内容为:"+mess); } }
Test.java
Java代码
public class Test{ public static void main(String [] args){ B b_01=new B(); B b_02=new B("你好"); } }
输出结果:
以上所述是小编给大家介绍的Java构造方法实例详解(动力节点java学院整理),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
本文向大家介绍Java System类详解_动力节点Java学院整理,包括了Java System类详解_动力节点Java学院整理的使用技巧和注意事项,需要的朋友参考一下 System类是jdk提供的一个工具类,有final修饰,不可继承,由名字可以看出来,其中的操作多数和系统相关。其功能主要如下: • 标准输入输出,如out、in、err • 外部定义的属性和环境变量的访问,如getenv()/
本文向大家介绍Java异常详解_动力节点Java学院整理,包括了Java异常详解_动力节点Java学院整理的使用技巧和注意事项,需要的朋友参考一下 什么是异常? 异常是Java语言中的一部分,它代表程序中由各种原因引起的“不正常”因素。 那么在程序中什么样的情况才算不正常呢? 我认为可以这样定义:如果出现了这么一种情况,它打断了程序期望的执行流程,改变了控制流的方向(包括让JVM停掉),那么就可以
本文向大家介绍Java守护线程实例详解_动力节点Java学院整理,包括了Java守护线程实例详解_动力节点Java学院整理的使用技巧和注意事项,需要的朋友参考一下 在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 用个比较通俗的比如,任何一个守护线程都是整个JVM中所有非守护线程的保姆: 只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护
本文向大家介绍Java方法重写_动力节点Java学院整理,包括了Java方法重写_动力节点Java学院整理的使用技巧和注意事项,需要的朋友参考一下 一、方法重写(Override) 在Java中如何来定义重写:Java程序中类的继承特性可以产生一个子类,子类继承父类就拥有了父类的非私有的属性(方法和变量),在子类中可以增加自己的属性(方法和变量),同时也可以对父类中的方法进行扩展,
本文向大家介绍TCP协议详解_动力节点Java学院整理,包括了TCP协议详解_动力节点Java学院整理的使用技巧和注意事项,需要的朋友参考一下 本文描述了TCP协议,首先简单介绍了TCP完成了一些什么功能;介绍了TCP报文格式,以及典型报文的数据格式;接着从链路控制和数据传输两个方面进行了介绍,在TCP中链路控制和数据传输是通过同一个通道进行的,并没有区分控制通道和数据通道;在网络中传输数据(控制
本文向大家介绍ArrayList详解和使用示例_动力节点Java学院整理,包括了ArrayList详解和使用示例_动力节点Java学院整理的使用技巧和注意事项,需要的朋友参考一下 第1部分 ArrayList介绍 ArrayList简介 ArrayList 是一个数组队列,相当于 动态数组。与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, Random