zoukankan      html  css  js  c++  java
  • 构造函数

    一,构造函数的定义格式:

         Java中所有类都有构造方法,用来进行该类对象的初始化,构造方法也有名称,参数和方法体以及访问权限的设定。

             1.构造方法的完整定义格式如下

                  [public|protected|private]<class_name>([argument_list>])

                   {

                         [<statements>]

                   }

             2.访问限定符(4种)

                  ♦public :任何类都能够创建这个类的实例对象。

                  ♦protected:只有这个类的子类以及与这个类在同一个包中的类可以创建这个类的实例对象。

                  ♦private:没有其他类可以实例化该类,只有这个类中具有public权限的方法可以构造该类的对象。

                  ♦没有访问权限设定:只有与该类在同一个包中的类可以创建该类的实例化对象。

            3.构造方法的特点:

                   ♥构造方法的名称必须与类名相同。

                   ♥构造方法不能有返回值。

                   ♥用户不能直接调用构造方法,必须通过关键字new 自动调用它。

            ( 补充:)

                         1.用class定义的类型叫做类类型。

          2.一个类是用来描述一个实体(属性+行为)的抽象类型。

               类(成员变量)=》实体的属性的

               类(成员方法)=》实体的行为的

          3.类里面的所有成员都可以做访问限定,如:public,private。。。

          4.对象的成员变量如果没有初始化,会自动进行初始化的,

                引用类型的变量==》null

                简单类型的变量:byte,short,int,long==》0

                     float,double==》0.0

                     boolean==》false

                      char==》'u0000'

          5.构造方法的特点:

              new对象的时候,先分配内存,然后自动调用相应的构造函数。

              构造函数专门做成员变量的初始化操作。

                      成员变量没有返回值,只有函数名和参数列表。

              构造函数的名字只能和类名相同。

          6.类里面

          7.static成员变量是属于类级别的,是所有这个类实例化的对象所共享的变量

           普通的成员变量是属于对象级别的,是每一个对象所私有的。

          8.static成员方法属于类级别,调用时通过 ( 类名. )  进行调用,方法中没有this引用

           普通的成员方法必须通过   (对象. )   来调用,方法中没有this 引用变量。

                 

       4.默认的构造方法

        在Java类中可以不定义构造方法,而其他类仍然可以通过调用new XXX()来实例化XXX类的对象。

    这是因为Java在编译时,给没有定义构造方法的类自动加入了一个特殊的构造方法。这个方法不带参数,且方

    法体为空,称为类默认的构造方法。

                  用默认构造法方法初始化对象时,由系统用默认值初始化对象。

            5.重载构造方法

                构造方法可以重载,即定义多个构造方法,其参数表不同,重载构造方法的目的是使类对象具有不同的初始值,为类对象的初始化提供方便。

  • 相关阅读:
    31天重构指南之二十:提取子类
    31天重构指南之二十二:分解方法
    大叔手记(17):大叔2011年读过的书及2012年即将要读的书
    深入理解JavaScript系列(5):强大的原型和原型链
    深入理解JavaScript系列(10):JavaScript核心(晋级高手必读篇)
    深入理解JavaScript系列(11):执行上下文(Execution Contexts)
    深入理解JavaScript系列(8):S.O.L.I.D五大原则之里氏替换原则LSP
    深入理解JavaScript系列(4):立即调用的函数表达式
    深入理解JavaScript系列(3):全面解析Module模式
    深入理解JavaScript系列(7):S.O.L.I.D五大原则之开闭原则OCP
  • 原文地址:https://www.cnblogs.com/ljl150/p/11602057.html
Copyright © 2011-2022 走看看