JAVA基础——构造函数方法总结(有参构造和无参构造)
转载地址:https://www.cnblogs.com/huan-guo/p/8359801.html
使用构造器时需要记住:
1.构造器必须与类同名(如果一个源文件中有多个类,那么构造器必须与公共类同名)
2.每个类可以有一个以上的构造器
3.构造器可以有0个、1个或1个以上的参数
4.构造器没有返回值
5.构造器总是伴随着new操作一起调用
构造方法: 语法
public 类名(){} (构造方法没有返回值, 构造方法:一般用于给对象赋初始值)
解决:参数名和 属性名 相同
修改参数名(不推荐)
使用this关键字
this: 关键字
1、指代当前对象
2、指代当前类 *
3、 指代构造方法 this(): 表示当前类的构造方法,只能放在首行
注意: 在新建对象的时候 实际上调用了类的无参(没有参数)的构造方法一般默认 (在类中可以隐藏)
示例1:
public class Student {
// 成员变量
private String name;
private int age;
public Student(){} //无参构造
public Student(String name, int age) {
this.name = name;
this.age = age; }//有参构造
示例2:
A.java
- public class A{
- public A(){
- System.out.println('调用了无参的构造函数');
- }
- public A(String mess){
- System.out.println('调用了有参的构造函数\n'+
- '参数内容为:'+mess);
- }
- }
Test.java
- public class Test{
- public static void main(String [] args){
- A a_1=new A();//调用无参的构造函数
- A a_2=new A('Hello');//调用有参的构造函数
- }
- }
输出结果:调用了无参的构造函数
调用了有参的构造函数
参数内容为:Hello
继承与构造函数
super关键字
- 只能指代父类对象
- 指代父类的构造方法,只能放在首行
注意
- 子类必须通过super关键字调用父类有参数的构造函数
- 使用super调用父类构造器的语句必须是子类构造器的第一条语句
如果子类构造器没有显式地调用父类的构造器,则将自动调用父类的默认(没有参数)的构造器。如果父类没有不带参数的构造器,并且在子类的构造器中又没有显式地调用父类的构造器,则java编译器将报告错误
赞 (0)