精华内容
下载资源
问答
  • 构造方法的作用
    千次阅读
    2019-03-08 04:36:56

    JAVA构造方法作用


    1.使用new+构造方法,创建一个新的对象。

    2.构造方法是定义在Java类中的一个用来初始化对象的方法。

    3.构造方法与类名相同时是没有返回值的。

    4.当没有指定构造方法时,系统会自动添加无参构造方法

    5.当有指定构造方法时,无论是有参还是无参的构造方法,系统都不会自动添加无参构造方法。

    6.构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法。

    7.构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋值合理。

    更多相关内容
  • 无参构造方法作用

    2021-01-08 11:22:33
    无参构造方法作用 1.无参构造方法一般是用来初始化:如为变量赋处置,初始化对象等。 2.无参构造方法可以去除,JAVA会给每个类一个默认的无参构造方法;当一个类中若存在有参构造方法,若想再使用无参的构造方法,...
  • @Autowired 构造方法作用

    千次阅读 2017-07-26 15:45:17
    当我们需要在类的构造方法里面里面获得需要注入的对象时: /*@Resource private Observer<TaxiObserverVo> taxiPushObserver; @Resource private Observer<TaxiObserverVo> ...

     当我们需要在类的构造方法里面里面获得需要注入的对象时:

    /*@Resource
    private Observer<TaxiObserverVo> taxiPushObserver;
    
    
    @Resource
    private Observer<TaxiObserverVo> taxiFlowObserver;
    
    
    
    public Pay () {
    super();
    addObserver(taxiFlowObserver);
    addObserver(taxiPushObserver);
    }*/
    
     
    
    @Autowired
    public Pay (Observer<TaxiObserverVo> taxiPushObserver,Observer<TaxiObserverVo> taxiFlowObserver) {
    addObserver(taxiFlowObserver);
    addObserver(taxiPushObserver);
    }

     

    可以在构造方法上使用@Autowire

     

    若不添加会报错,因为

    因为Java类会先执行构造方法,然后再给注解了@Autowired 的user注入值,所以在执行构造方法的时候,就会报错。 

    Java变量的初始化顺序为:静态变量或静态语句块–>实例变量或初始化语句块–>构造方法

     

    展开全文
  • Java无参构造方法作用

    千次阅读 2021-02-12 17:05:26
    classPerson{...//表示人的年龄publicvoidtell(){//定义说话的方法System.out.println("姓名:"+this.getName()+",年龄:"+this.getAge...class Person{private String name;// 表示人的姓名private int...

    classPerson{privateStringname;//表示人的姓名privateintage;//表示人的年龄publicvoidtell(){//定义说话的方法System.out.println("姓名:"+this.getName()+",年龄:"+this.getAge...

    class Person{

    private String name;// 表示人的姓名

    private int age ;// 表示人的年龄

    public void tell(){// 定义说话的方法

    System.out.println("姓名:" + this.getName() + ",年龄:" + this.getAge()) ;

    }

    public Person(){

    System.out.println("########");

    }

    public void setName(String n){

    name = n ;

    }

    public void setAge(int a){

    if(a>=0&&a<=200){

    age = a ;

    }

    }

    public String getName(){

    return name ;

    }

    public int getAge(){

    return age ;

    }

    };

    public class OODemo10{

    public static void main(String args[]){

    Person per = new Person() ;// 实例化对象

    System.out.println(per.getName());

    System.out.println(per.getAge());

    }

    };

    随便拷贝了一个代码

    问题:我知道结果会输出

    ########

    null

    0

    我们说构造方法的主要目的是为类中的属性初始化的,那无参构造方法的目的是不是也是这样,那么上面代码中的无参构造具体是怎么为类中的属性初始化的,我知道在使用new关键字的时候才会调用构造方法。但是上面代码中的null和0应该是在定义name和age属性时就产生了的。还有假如没有定义构造方法会自动生成一个无参构造,为什么要自动生成无参构造呢,还有无参构造的方法体是不是像上面那样打印###可以随便写

    展开

    展开全文
  • 在本篇文章里小编给大家整理了关于java构造方法的相关知识点以及实例代码,有需要的朋友们可以学习下。
  • Java构造方法作用

    千次阅读 多人点赞 2018-04-19 18:51:09
    构造方法作用构造方法作用之一就是实例化对象,之前对此一直都不是很了解,为什么要实例化对象呢?我们知道对象具有一定的属性,例如姓名,年龄,身高等,我们在定义类的时候就得要定义这些属性,但是实例化的...

    构造方法的作用

    构造方法的作用之一就是实例化对象,之前对此一直都不是很了解,为什么要实例化对象呢?我们知道对象具有一定的属性,例如姓名,年龄,身高等,我们在定义类的时候就得要定义这些属性,但是实例化的意思是什么呢?就是通过这些属性,把这些人实际的表达出来,通过属性或方法来实例一个人。

    [java] view plain copy
    1. public Person{//定义了一个人的属性,具备一些特征和功能  
    2.     String name;  
    3.     int age;  
    4.     float  height;  
    5.     void talk(){};  
    6. //我们可以将定义的属性和方法组合起来,就可以组合成一个人了  
    7.     Person(String name,int age,float height){  
    8.     This.name=name;  
    9.     This.age=age;  
    10.     This.height=height;   
    11. }  
    12. }  
    13. //组合完成之后,便可以定义不同的人了  
    14. Public class Gouzao{  
    15.     Public static void main(String[] args){  
    16.     Person    ren1=new Person(“张三”,20,180);  
    17.     ren1.talk();  
    18.     Person    ren2=new Person(“李四”,25,170);  
    19.     ren2.talk();  
    20.     Person    ren3=new Person(“王二”,30,185);  
    21.     ren3.talk();  
    22. <span style="white-space:pre">    </span>}  
    23. }  

    如果没有构造方法,我们得要这样写:Person   ren1=new Person();

    Ren1.name=(“张三”);   ren1.age=20; ren1.height=180;  多麻烦……所以用构造方法,相当于建立了一个代码块,直接填充进去就可以……


    ----------------------------------------------------------分割线-------------------------

    封装的高复用泛型类,运用了构造方法,以及创建成功的返回方法,和错误的放回方法

     
    package com.mmall.common;
    
    import com.sun.org.apache.regexp.internal.RE;
    import org.codehaus.jackson.annotate.JsonIgnore;
    import org.codehaus.jackson.map.annotate.JsonSerialize;
    
    import java.io.Serializable;
    
    /**
     * Created by qxl on
     * 2018/4/6
     *
     * 1. 高封装类
     * 2. 序列化的结果返回给前端
     * 3.有的时候需要返回data (对象),有的时候不需要,
     * 4.不要null
     * 5. 如果只需要status,可以直接返回status。没有msg 没有data
     * /**
     *
     * 在我们使用泛型类的时候,虽然传入了不通的泛型实参,但并没有真正意义上生成不通的类型
     * 传入不通泛型实参的泛型类在内存上只有一个,即还是原来的最基本的类型,本实例中为ox,
     * 当然,在逻辑上我们可以理解成多个不通的泛型类型
     *
     * 究其原因,在余java泛型的这一概念提出的母的,导致其只是作用与代码编译阶段,在编译过程中,
     * 对于检验法宁结果后,会将法宁的相关信息擦出,也就是说,成功编译过后的class文件中是不包含任何泛型信息的。泛型信息不会进入到运行时阶段
     *
     * 对此总结成一句话: 泛型类型在逻辑上看以看成是多个不通的类型,实际上都是相同的基本类型。
     *
     */
    
    @JsonSerialize( include = JsonSerialize.Inclusion.NON_NULL)
    // 不要null  报纸序列化json时候,如果是null的对象,key也会消息
    // 返回json中去除null字段
    public class ServerResponse<T> implements Serializable {
    
        //status   跟ajax返回的一致
        private int status;
        //info
        private String msg;
        //对象
        private T data;
        //构造方法
        private ServerResponse(int status){
            this.status =status;
        }
        private ServerResponse(int status,T data){
            this.status =status;
            this.data = data;
        }
        private  ServerResponse(int status,String msg){
            this.status =status;
            this.msg = msg;
        }
    
        private ServerResponse(String msg){
            this.msg = msg;
        }
        private ServerResponse(int status,String msg,T data){
            this.status =status;
            this.msg = msg;
            this.data = data;
        }
        /**
         * 疑点 :T任意对象  用String到底是哪一个
         */
       /* public static void main(String[] args) {
            ServerResponse sr1 =new ServerResponse(1,new Object());
            ServerResponse hello = new ServerResponse(1, "hello");
            System.out.println("console");
        }*/
    
        /**
         * 是否成功 0成功  1失败
         * @return
         */
        /**
         * boolean 显示在json中
         * 1、加注解 @JsonIgnore 就不会显示在json里面
         * @return
         */
       @JsonIgnore
       //不在json序列化结果之中
       public  boolean isSuccess(){
            //是0状态成功  1状态是失败
            return this.status == ResponseCode.SUCCESS.getCode();
       }
        //这三个就在
       public  int getStatus(){
           return status;
       }
       public   String getMsg(){
           return msg;
       }
       public T getData(){
           return data;
       }
    
        /**
         * 創建成功 返回一個status状态
         * @param <T>
         * @return
         */
       public static <T> ServerResponse<T> createBySuccess (){
           return new ServerResponse<T>(ResponseCode.SUCCESS.getCode());
       }
    
        /**
         * 成功返回 和 消息
         * @param msg
         * @param <T>
         * @return
         */
       public  static <T> ServerResponse<T> createBySuccessMessage(String msg){
            return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg);
       }
    
        /**
         * 成功状态   和 对象
         * @param data
         * @param <T>
         * @return
         */
       public  static <T> ServerResponse<T> createBySuccessData(T data){
            return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),data);
       }
    
        /**
         *  成功状态  和 消息  对象
         * @param msg
         * @param data
         * @param <T>
         * @return
         */
       public  static <T> ServerResponse<T> createBySuccessData(String msg,T data){
            return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg,data);
       }
    
        /**
         * 错误
         * @param <T>
         * @return
         */
       public  static <T> ServerResponse<T> createByError(){
           return new ServerResponse<T>(ResponseCode.ERROR.getCode());
       }
    
        /**
         * 错误的状态  和 消息
         * @param errormsg
         * @param <T>
         * @return
         *  类上的泛型是对象的
            静态的只能自己定义泛型
         */
       public  static <T> ServerResponse<T> createByErrorMessage(String errormsg){
           //返回值是ServerResponse  实例化的每個返回值都是構造方法。 所以可以
            return new ServerResponse<T>(ResponseCode.ERROR.getCode(),errormsg);
       }
    
        /***
         *  参数错误   需要登录,code做成变量,
         *  参数错误的话,需要暴露出来
         * @param errormsg
         * @param <T>
         * @return
         */
        public  static <T> ServerResponse<T> createByErrorCodeMessage(int errorcode,String errormsg){
            return new ServerResponse<T>(errorcode,errormsg);
        }
    
        }
    
    
    
    

    展开全文
  • 子类在调用父类时 无论自己有没有构造方法都会先去执行父类无参的函数。哪怕父类是抽象类。虽然抽象类不能被实例化,但是可以在构造方法中初始化一些参数;也可以在子类中调用父类的构造方法。 阅读如下代码: 父类...
  • java中构造方法作用是什么(非原创)

    千次阅读 多人点赞 2020-09-04 21:41:25
    初学Java的构造方法时,根本不能理解构造方法有什么用,自己写程序的时候也从来没有用过。于是刚开始我写的程序是这样的: package test3; public class Student { private String name; private long ID; ...
  • Java构造方法作用和重要知识点
  • Java无参构造方法作用 class Person{ private String name ; // 表示人的姓名 private int age ; // 表示人的年龄 public void tell(){ // 定义说话的方法 System.out.println(“姓名:” + this.getName() + “,...
  • Java中构造方法作用与特征

    千次阅读 2020-04-11 09:13:30
    通过查阅资料以及自己的消化了解,我这篇文章里简单描述一下Java中构造方法作用与特征,如有错误,敬请指出,共同探讨! 构造方法的特点 构造方法名一定与类同名 构造方法不可以定义返回值类型(void 也不行)...
  • java中构造方法作用

    千次阅读 2018-10-29 16:52:26
    构造方法最重要的作用之一就是实例化对象。 在创建类的时候,我们把该对象的性质,属性,行为等都描述出来,最后就需要通过包含这些属性的方法把对象找到。 注意: 1.构造方法没有返回值 2.构造方法的名称与类名...
  • 构造方法作用

    千次阅读 2011-03-17 22:20:08
    1.用类创建对象时使用构造函数。构造函数名必须与类名相匹配并且必须没有返回类型。它们可以被重载,但是不被子类继承。 调用构造函数 2.只能从其他构造函数中调用构造函数。要调用同一个类中的构造函数,用...
  • 构造方法作用和用法(对于刚接触的学员)

    万次阅读 多人点赞 2018-03-14 15:38:04
    很多新学员不知道构造方法是做什么的,有的稀里糊涂,那什么是构造方法呢?先来理解一下构造方法的意思。 构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,...
  • 在 Java 中定义一个不做事且没有参数的构造方法作用 答案: Java 程序在执行子类的构造方法之前,如果没有用 super()来调用父类特定的构造方法,则会调用父类中“没有参数的构造方法”。因此,如果父类中只定义...
  • (2)作用:在构造方法中为创建的对象初始化赋值, (3)在创建一个对象的时候,至少要调用一个构造方法。 (4)每个类都有构造方法。如果没有显式地为类定义构造方法,Java将会为该类提供一个默认构造方法,但是...
  • 详解c# 类的构造方法

    2020-12-31 23:09:39
    类的构造方法是类的成员方法的一种,它的作用是对类中的成员进行初始化操作。类的构造方法分为:  1.静态构造方法  2.实例构造方法 1.静态构造方法 类的静态构造方法是类的成员方法的一种,它的作用是对类中的静态...
  • Java中构造方法作用

    万次阅读 多人点赞 2019-04-19 22:58:59
    初学Java的构造方法时,根本不能理解构造方法有什么用,自己写程序的时候也从来没有用过。于是刚开始我写的程序是这样的: package test3; public class Student { private String name; private long ID; ...
  • java抽象类的构造方法和普通类的构造方法一样都是用来初始化类只是抽象类的构造方法不能直接调用 因为抽象类不能实现实例但是一旦一个普通类继承了抽象类 便也可以在构造函数中调用其抽象类的构造函数也可以使用其...
  • 构造方法有哪些特点及他的作用

    万次阅读 2017-05-19 09:26:20
    (3)构造方法可以没有(默认一个无参构造方法),也可以有多个构造方法。他们之间构成重载关系。 (4)如果定义有参构造函数,则无参构造函数将被自动屏蔽。 (5)构造方法不能被继承。 (6)构造方法不能...
  • 默认构造方法总结

    千次阅读 2018-07-13 19:55:46
    作用:java每个类至少定义一个构造方法,当一个类没有构造方法,编译程序自动提供一个默认构造方法。格式如下&lt;与类相同的访问控制符&gt;&lt;类名&gt;(){ super();}解释:super()作用是调用父类...
  • 构造方法作用和特点

    千次阅读 多人点赞 2019-10-03 18:20:07
    1.构造函数的作用构造函数主要用来在创建对象时完成对对象属性的一些初始化等操作,当创建对象时,对象会自动调用它的构造函数。一般来说,构造函数有以下三个方面的作用:■给创建的对象建立一个标识符;■为对象数据...
  • java中构造方法的概念和作用

    千次阅读 2021-08-23 13:48:46
    java中构造方法指的是: 与类名相同,无返回类型的方法,参数可以为空,也可以带参数。 比如一个 Dao 类,private Dao(){}这个就是无参数的构造方法。 private Dao(String name){}这个就是带参数的构造方法作用:...
  • 枚举里面的构造方法

    千次阅读 2019-03-31 12:23:05
    那么就因该由成员属性,成员方法,以及构造方法,今天,我们来说下枚举类型的构造方法。还是来看看代码吧。 public enum Demo { //创建枚举成员. Demo_A("我是枚举类成员A"), Demo_B("我是枚举类成员B"), Demo_...
  • Java中的构造器的作用?(构造方法作用与特点)

    千次阅读 多人点赞 2021-05-28 18:51:12
    //定义类Construction1 自己不手动添加任何无参或有参数构造方法 static class Construction1{ private int age; private String name; private String sex; } //定义类Construction2 自己添加无参的构造方法 ...
  • java构造方法

    千次阅读 2022-02-26 17:41:08
    构造方法作用: 三.构造方法怎么调用? 四.构造方法的语法结构:(构造方法名字和类名一致,没有返回值类型) 五.普通方法的语法结构: 六.无参数和有参数构造方法的调用 七.构造方法支持方法重载吗? 八.方法...
  • 构造方法在枚举中的应用

    千次阅读 2017-04-27 14:09:20
    枚举在使用的时候一般不需要构造方法,一般我们写枚举的时候,会简单这样写   public enum Number{ ONE, TWO, ThREE, FOUR; }       但是我们如果需要自定义枚举,要先定义变量,然后定义相应的构造...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 876,385
精华内容 350,554
关键字:

构造方法的作用

友情链接: 三角形判断.rar