精华内容
下载资源
问答
  • java怎么调用构造方法

    千次阅读 2021-03-04 04:38:04
    Java调用构造方法,那就是子类调用基类(父类)的构造方法,如何调用,请看详细内容。子类中的构造方法的规则子类的构造过程中必须调用其基类的构造方法。子类可以在自己的构造方法中使用super(argument_list)调用基类...

    Java调用构造方法,那就是子类调用基类(父类)的构造方法,如何调用,请看详细内容。

    8d2702e38c6668ccf218bb9f71fc626d.png

    子类中的构造方法的规则

    子类的构造过程中必须调用其基类的构造方法。

    子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法。

    如果使用this(argument_list)调用本类的另外构造方法。

    如果调用super,必须写在子类构造方法的第一行。

    如果子类的构造方法中没有显示的调用基类的构造方法,则系统默认调用基类的无参数构造方法。

    如果子类构造方法中既没有显示调用基类构造方法,而基类又没有无参数的构造方法,则编译出错。

    示例如下:class SuperClass{

    private int n;

    //SuperClass(){

    // System.out.println("SuperClass()");

    //}

    SuperClass(int n){

    System.out.println("SuperClass(int n)");

    this.n = n;

    }

    }

    class SubClass extends SuperClass{

    private int n;

    SubClass(){

    super(300);//调用父类的有参构造方法

    System.out.println("SuperClass");

    }

    SubClass(int n){

    System.out.println("SubClass(int n):"+n);

    this.n = n;

    }

    }

    public class TestSuperSub{

    public static void main (String args[]){

    //SubClass sc = new SubClass();

    SubClass sc2 = new SubClass(200);

    }

    }

    依次验证上面的语法。

    展开全文
  • Java中构造方法调用构造方法??

    千次阅读 2021-02-12 13:19:58
    心有猛虎_细嗅蔷薇正确的调用方法应该是直接一个this()来调用构造方法。请看代码:classStudent{Stringid;Stringname;Stringsex;//创建构造方法publicStudent(Stringid,Stringname,StringclassNum,Stringsex,intage){...

    535e16483efd23e5031372280ac0f581.png

    心有猛虎_细嗅蔷薇

    正确的调用方法应该是直接一个this()来调用构造方法。请看代码:class Student{

    String id;

    String name;

    String sex;

    //创建构造方法

    public Student(String id,String name,String classNum,String sex,int age){

    this(id,name,classNum,sex);

    this.age = age;

    }

    //重载构造方法,有两个参数

    public Student(String id,String name){

    this.name = name;

    this.id =id;

    }

    //重载构造方法,有3个参数

    public Student(String id,String name,String sex){

    this(id,name);                //在三个个参数的构造方法里面调用两个参数的构造方法 this(id,name)

    this.sex = sex;               // 在添加另一个参数,实现构造方法调用构造方法

    }

    public static void main(String[] args) {

    }

    }

    展开全文
  • 构造函数类似于方法,它在创建类的对象时被调用,通常用于初始化类的实例变量。构造函数与它们的类同名,并且没有返回类型。...从方法调用构造函数不,不能从方法调用构造函数。唯一可以使用“this...

    构造函数类似于方法,它在创建类的对象时被调用,通常用于初始化类的实例变量。构造函数与它们的类同名,并且没有返回类型。

    无需显式调用构造函数,这些构造函数会在实例化时自动调用。

    Java中的this关键字是对当前类的对象的引用。使用它,您可以引用类的字段,方法或构造函数。

    因此,如果需要显式调用构造函数,则可以使用“ this()”进行。

    从方法调用构造函数

    不,不能从方法调用构造函数。唯一可以使用“this()”或“super()”调用构造函数的地方是另一个构造函数的第一行。如果尝试在其他地方显式调用构造函数,将生成编译时错误。

    例子import java.util.Scanner;

    public class Student {

    private String name;

    private int age;

    Student(){}

    Student(String name, int age){

    this.name = name;

    this.age = age;

    }

    public void SetValues(String name, int age){

    this(name, age);

    }

    public void display() {

    System.out.println("name: "+this.name);

    System.out.println("age: "+this.age);

    }

    public static void main(String args[]) {

    Scanner sc = new Scanner(System.in);

    System.out.println("输入学生的姓名: ");

    String name = sc.nextLine();

    System.out.println("输入学生的年龄: ");

    int age = sc.nextInt();

    Student obj = new Student();

    obj.SetValues(name, age);

    obj.display();

    }

    }

    编译时错误Student.java:12: error: call to this must be first statement in constructor

    this(name, age);

    ^

    1 error

    展开全文
  • Java构造方法的相互调用

    千次阅读 2018-11-29 17:01:10
    Java中,当给一个类创建了多个构造方法时,有时想在一个构造方法调用另一个构造方法以减少代码量。这时可以使用this关键字来实现。 通常,当使用this关键字时,它意味着“这个对象”或者“当前对象”,并且它...

    在Java中,当给一个类创建了多个构造方法时,有时想在一个构造方法中调用另一个构造方法以减少代码量。这时可以使用this关键字来实现。
    通常,当使用this关键字时,它意味着“这个对象”或者“当前对象”,并且它自身产生对当前对象的引用。在一个构造方法中,当给传递给它一个参数列表时,它就有了不同的意义。它将直接的调用能够匹配这个参数列表的构造方法。因此,我们可以直接的调用其它构造方法:

    //举例:用this(参数列表)的形式,自动调用对应的构造方法。不可以直接使用类名进行调用。

    public class Person {
            private String name;
            private int age;
            //构造方法一
            public Person() {
                this(null);
            }
            //构造方法二
            public Person(String n) {
                this(n, 12);//调用第三个
            }
            //构造方法三
            public Person(String n, int a) {
                this.name = n;
                this.age = a;
            }
        }

    看例子,第一个构造方法调用第二个的,第二个的再调用第三个。第三个是最终的实现。这样就能减少代码量了。

    展开全文
  • 今天看磊哥代码,看到了他调用了一个方法的构造方法,我本来是去看业务逻辑的,看看到底这货是怎么实现的我要的那个业务流程。看了半天愣是没看出来,这是怎么调用的其中的方法,如下: new ListenBeanJob(fal);//...
  • java-静态方法中调用构造方法

    千次阅读 2020-06-21 20:29:37
    静态成员 基本定义: 静态成员包括静态方法(static method)和静态变量...java支持静态方法和静态变量,无需创建类的实例就可以调用静态方法。 ----《java语言程序设计 基础篇》原书第10版,梁勇著 要声明一个静态变量
  • java 调用类的构造函数

    千次阅读 2019-04-03 13:43:52
    构造函数1:通过参数传递书名给书名属性赋值; 构造函数2:通过参数传递书名、作者给相关属性赋值; 构造函数3:通过参数传递书名、作者、出版社给相关属性赋值; 构造函数4:通过参数传递书名、作者、出版社、价格...
  • 先说构造方法,在使用Class类中的,newInstance() 取得实例化对象时,会出现一些问题。看下面出错的代码:package com.jmd.bingo; class Person { private String name; private int age; // public Person() { //...
  • Java里子类调用父类构造方法问题

    千次阅读 2021-02-13 01:44:43
    Java中,子类的构造过程中,必须调用其父类的构造函数,是因为有继承关系存在时,子类要把父类的内容继承下来,通过什么手段做到的?...构造方法是new一个对象的时候,必须要调的方法,这是规定,要new父类对象出...
  • 其实子类的所有构造方法的第一行都有一条隐示super()或者显示的super() 隐示super() 先说一下什么情况下会有隐示的super()。 1.子类构造函数中没写super()并且子父类具有无参构造函数。那么子类第一行便会自动一条...
  • java构造方法调用普通方法

    千次阅读 2018-08-23 09:37:45
    参考文章:... 参考资料:《java 编程思想》第四版 class Fu{ void draw(){ System.out.println("基类的 draw 方法"); } Fu(){ System.out.println(...
  • 构造方法何时被调用

    千次阅读 2021-03-01 07:03:05
    java语言中,构造函数又称构造方法。构造函数的作用是初始化对象,即在创建对象时被系统调用(与普通方法不同,程序不能显示调用构造函数)。构造函数还能够被重载,即可以传入参数,当程序中包含有带参的构造函数时...
  • Java子类调用父类的构造方法

    千次阅读 2020-05-20 20:44:47
    一、自动调用父类无参构造方法 //这是父类 public class SuperClass { //父类无参构造方法 public SuperClass(){ System.out.println("父类无参构造方法"); } //父类带参构造方法 public SuperClass(String ...
  • 下面是关于父类构造方法调用的实验:当父类子类都没有定义构造方法时,系统为父类、子类提供一个无参构造方法,并在子类中隐式调用父类无参构造方法:class Father {} class Son extends Father {}我们可以自己写...
  • 子类B默认调用父类无参构造方法,但是如果父类写了有参构造方法却没写无参构造方法,就算子类写了无参构造方法也会报错。 但是若子类没有无参构造并且之后都没有用到无参构造,不会报错: 子类若要调用父类有参...
  • Java-构造方法调用顺序

    千次阅读 2019-03-30 20:14:20
    然后我们调用了ChildClass这个类的构造方法,然后由于虽然在public ChildClass{}这个构造方法内并只写了System.out.println(“创建ChildClass”);但是其第一步必定执行super();于是去执行其父类FatherClass类的构造...
  • Java的静态方法里是不能调用非静态方法的,但为什么可以调用构造方法
  • java构造函数的调用

    千次阅读 2018-11-09 01:35:42
    构造函数的调用,需要使用this关键字 this(); //调用无参构造函数Food() this(name); //调用有参构造函数Food(String name) 作用: 在一个构造函数中调用另一个构造函数,主要是为了增加代码的复用性。 ...
  • 一般来说,利用this关键 字来调用构造方法,只有在无参数构造方法中第一句使用this调用有参数的构造方法。否则的话,翻译的 时候,就会有错误信息。这跟引用成员变量不同。如果引用成员变量的话,this关键字是没有...
  • Java构造函数中调用构造函数

    千次阅读 2019-07-22 23:44:39
    Java中,当为一个类创建了多个构造函数时,有时想在一个构造函数中调用另一个构造函数以减少代码量。这时可以使用this关键字来实现。通常,当使用this关键字时,它意味着“这个对象”或者“当前对象”,并且它自身...
  • JNI调用Java构造方法,父类方法

    千次阅读 2016-09-26 16:00:57
    本文基于此项目Hello JNI本文用到的函数:Call< Type>Method, CallNonvirtual< Type>MethodJNIDemo.java创建两个native方法 //访问构造方法 public native void accessConstructMethod(); //访问父类方法 public ...
  • java构造方法和普通方法的区别

    千次阅读 2021-02-25 20:22:24
    java构造方法和普通方法的区别一、普通方法是有修饰符修饰的成员方法,根据关键字static的有无分为静态方法和非静态方法;一旦使用static修饰成员方法,就成为了静态方法,静态方法不属于对象,而是属于类的;如果...
  • Java有参构造方法和无参构造方法

    千次阅读 2021-02-12 17:05:28
    (如果自己添加构造函数,无论有参数或是没参数,默认构造函数都将无效)编写时添加了有参构造方法而未添加无参构造方法,那么编译器只认有参构造方法而不会默认添加无参构造方法!如果需要使用无参构造方法,一定要在...
  • 学习java时,理解的this关键字的实质是用来指向当前对象... 关键字this可以出现在类的构造方法中,代表使用该构造方法所创建的对象。 public class Tom { int leg; Tom(int n) { this.cry(); //可以省略thi...
  • 继承有个特点,就是子类无法访问父类的private字段或者private方法。例如,Student类就无法访问Person类的name和age字段: class Person { private String name; private int age; } class Student extends ...
  • Java构造方法

    千次阅读 多人点赞 2019-03-01 11:51:45
    为什么要有构造方法 我们知道,代码执行出的效果越接近现实世界,越说明它反应出了现实生活中的需求。例如,我们新建一个“人”class,我们为这个类附加上“人”的吃饭穿衣属性。代码运行的过程中,只要调用到了...
  • 构造方法何时被调用 ( ) A.类定义时 B.创建对象时 C.调用对象方法时 D.使用对象的变量时 正确答案 B 答案解析 其是应该说是实例化对象时被调用,一个类的创建会默认有一个无参构造方法,当你实例化的时候...
  • Java中的构造方法

    千次阅读 2020-01-15 09:53:45
    构造方法是类的一种特殊方法,用来初始化类的一个新的对象,在创建对象(new 运算符)之后自动调用Java中的每个类都有一个默认的构造方法,并且可以有一个以上的构造方法。 换个角度说:构造方法负责对应对象的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 944,215
精华内容 377,686
关键字:

java调用构造方法

java 订阅