• 面向对象、匿名对象、构造方法


    1. 类和对象的关系 :类是对同一类事物(对象)的抽象,对象实际存在的该类的各种实体。

    2. 面向对编程的核心:找合适的对象来做合适的事。

    3. java中如何来找到对象:

            (1).sun自己定义好的类,必须知道这个类。

                       (2).自定义类,通过自定义的类来出创建对象。

    4. 类的格式 :

               class 类名 {

                         //1.属性(成员变量) :描述对象的公共特性。。

                         //2.方法 :描述对象的公共行为。

                  }

           如何通过类创建对象:

                  类名对象名 = new  类名();

    5. 匿名对象 :没有名字对象

           匿名对象的使用注意点:

                    (1).我们一般不会用匿名对象给属性赋值,无法获取属性值。

                    (2).创建出来每一次都是一个新的对象。

            匿名对象的好处 : 书写简单。

            匿名对象的使用场景 :

                  (1).如果一个对象需要调用一个方法一次的时候,就可以用匿名对象来调用。

                  (2).可以作为实际参数在方法中调用。

    一. 构造方法。

    1.在java中类似OC中的初始化方法 叫 构造方法。

    2.OC初始化方法的特点 :

                  (1).可以在对象创建时初始化属性值。

                  (2).初始化方法只能被调用一次。

    3.构造方法的作用 :给对应的对象进行初始化,对象创建时初始化属性值。

    4.如何来创建构造方法:

                  格式 :

                  修饰符 类名(参数列表){}

    5.构造方法使用注意点:

                  (1).方法名和类名保持一致

                  (2).构造方法没有返回值的。

                  (3).构造方法不是由我们手动调用的,而是在对象被创建时由java虚拟机调用的。

                  (4).如果一个类我们没有给他定义构造方法,jvm在编译的时候会给这个类默认添加一个无参的构造方法。

                  (5).如果你自己定义构造方法,jvm就不会在创建无参的构造方法。这个时候需要自己定义一个无参的构造方法。

    二. 方法重载

    1.在java中方法是可以重名的,我们把这种重名的方法叫方法的重载。

    2.方法重载的使用注意事项:

                  (1).必须是方法名一样,才可以叫方法重载

                  (2).任何方法都可以实现方法的重载。

                  (3).保证参数列表的参数的顺序或者个数不一样

    三. 构造代码块

    1.构造代码块的作用 : 给对象统一初始化。

    2.构造代码块的格式 :

           {

           }

    3.注意 :构造代码块必须是写在成员的位置上的。

    4.代码块 :

                  (1).构造代码块

                  (2).局部代码块  写在方法中 也是以大括号来表示。

                  (3).静态代码块  后面讲。

    5.构造代码块的使用注意点 :对象被创建出来时就执行了。。。具体在什么时候执行的呢?

    6.构造方法中是可以调用普通方法的

    7.在同一个类中,方法的调用直接拿到方法名调用就可以了。

    8.造代码块 :作用 :给对象统一初始化。

    构造代码块使用注意点:

    9.java中编译器编译一个java源文件的时候,会把成员变量的声明放在类的最前面。

    10.成员变量的初始化都是在构造方法中执行的。

    11.一旦经过java编译器编译后,那么构造代码块中的代码会移到构造函数中执行

    12.成员变量的显示初始化和构造代码块,按照当前代码的顺序来执行的,谁在后面就显示谁。

    四. this 关键字

    1.this : 代表所属方法的调用对象。 和OC 中的self很象。

    2.this关键字的作用 :如果成员变量和局部变量重名,在方法中时默认调用局部变量,通过this可以让方法调用成员变量。

    3.this关键字的使用注意点 :

               (1).存在域成员变量同名局部变量,方法内部会访问局部变量(java采用一个就近原则)

               (2).在方法中不存在和成员变量同名的局部变量,java编译器在编译时会默认给变量前面加一个this.

    4.构造方法中是可以调用普通(实例)方法。

    5.构造方法中是否可以调用构造方法?可以的

    1.面向对象的理解并举例?

             面向对象的核心 : 找合适的对象做合适的事情。

             面向对象编程的思想 : 尽可能的用计算机语言来描述现实生活中的事物。

             面向对象 : 侧重与对象

    2.类与对象之间的关系?

             类是同一类事物的抽象,对象是这个类的具体实现。

    3.如何对类进行分析,如果创建自定义类对象,并如何指挥对象做事情?

             类的结构 :

                       class 类名 {

                                //1.公用属性

                                //2.构造方法。

                                //3.构造代码块

                                //4.公有方法 ,普通方法             

                       }

                       new 类名();  // 匿名对象

                       匿名对象 :

                                1.一般不会用匿名对象给属性赋值,因为无法获取到。

                                2.创建出来每一次都是一个新的对象。

                       匿名对象作用:

                                1书写简单,如果一个对象中的方法只需要调用一次,这个时候就可以使用匿名对象

                                2.可以作为实际参数在方法中调用。

                      

                       设置属性 :必须要有一个对象

                                对象.属性名 = 值;

                       访问(获取)属性 :

                                对象.属性名

                       访问方法:

                                对象.方法名();

                               

    4.对象的内存分布图?

             对象的引用变量是存栈区中的 ,对象是存在堆区中的,成员变量也是随着对象存在对去中的。

    5.成员变量和局部变量的区别?

             位置:

                       1.成员变量实在,类中方法外。

                       2.局部变量存在方法中

             作用域:

    1. 成员变量当前类中都可以使用

    2.局部变量只能在方法中使用

             初始化:

                       1.成员变量默认由初始值

                       2.局部变量要想使用必须初始化。

             生命周期:

                       1.随着对象的创建而创建,随着对象的消失而消失

                       2.出来方法的调用就消失。

    7.构造函数和一般函数的区别?

              结构上:

                       1.构造函数是没有返回值,方法名就是类名。

                       2.构造函数是由jvm来调用的,自己是无法手动调用,只会被调用一次。

              作用:

                       1.初始化的时候给属性赋值。

                       2.描述对象的某种行为。

    8.构造函数什么时候用?

             创建对象的时候由jvm调用

    9.构造代码块的作用?

             可以给对象设置统一初始化的值。

             位置:

                       在成员变量的位置上。成员变量写在哪里,我就可以写在哪里。

            

             构造代码块的代码是在构造函数中执行的,并且先于构造函数中的代码执行

             java在编译的时候会自动将成员变量的声明放在最前面。

    10.this关键字的特点和使用以及应用场景?

             this :当前调用方法的对象。

             this的作用:

                       1.如果成员变量和局部变量同名可以通过this来调用成员变量。

                       2.可以通过this实现构造方法中调用构造方法。

                                格式:

                                         this(参)--->具体参数是什么,由你的构造方法决定。

                                         注意:必须是方法中的第一个语句。

  • 相关阅读:
    C#之时间统计
    Unity之屏幕画线
    Unity之坐标转换
    Unity3d之按键
    Unity3d之截图
    [Windows]A盘凭空消失
    函数的多类型传值
    isdigit()
    函数的返回值
    locals()
  • 原文地址:https://www.cnblogs.com/youjiajin/p/6087796.html
Copyright © 2020-2023  润新知