zoukankan      html  css  js  c++  java
  • 面向对象、构造函数的区别

    面向对象编程
    
       1.封装性
         面向对象编程核心思想之一就是将数据和对数据的操作封装在一起,通过抽象即从具体的实例中抽取共同的性质形成一般的概念。
       2.继承
         子类可以继承父类的属性和功能,即子类继承了父类所有的数据和数据上的操作,同时又可以添加子类独有的数据和数据上的操作。
       3.多态有两种意义的多态   
         1)操作名称的多态
         2)和继承有关的多态
    
    类:
       习惯上类名的第一个字母大写。
       编写类的目的是为了描述一类实物共有的属性和功能。类提的内柔有两部分构成:一部分是变量的定义,用来刻画属性;另一部分是方法的定义用来刻画功能。
    
    
    
    构造函数:用于给对象进行初始化,是给与之对应的对象进行初始化,它具有针对性,函数中的一种。
    特点:
       1、该函数的名称和所在类的名称相同。
       2、不需要定义返回值类型。
       3、该函数没有具体的返回值。
       记住:所有对象创建时,都需要初始化才可以使用。
       注意事项:一个类在定义时,如果没有定义过构造函数,那么该类中会自动生成一个空参数的构造函数,为了方便该类创建对象,完成初始化。如果在类中自定义了构造函数,那么默认的构造函数就没有了。
       一个类中,可以有多个构造函数,因为它们的函数名称都相同,所以只能通过参数列表来区分。所以,一个类中如果出现多个构造函数。它们的存在是以重载体现的。
     
    构造函数和一般函数有什么区别呢?
       1、两个函数定义格式不同。
       2、构造函数是在对象创建时,就被调用,用于初始化,而且初始化动作只执行一次。
        一般函数,是对象创建后,需要调用才执行,可以被调用多次。
     
    构造代码块和构造函数有什么区别?
       构造代码块 :给对象进行初始化,对象一建立就运行而且优于构造函数执行。
       构造代码块和构造函数的区别 :构造代码块是给所有对象进行统一初始化,而构造函数是给指定的对象进行初始化。 
    
       People p = new People();
       创建一个对象都在内存中做了什么事情?
       1、先将硬盘上指定位置的People.class文件加载进内存。
       2、执行main方法时,在栈内存中开辟了main方法的空间(压栈-进栈),然后在main方法的栈区分配了一个变量p。
       3、在堆内存中开辟一个实体空间,分配了一个内存首地址值。new
       4、在该实体空间中进行属性的空间分配,并进行了默认初始化。
       5、对空间中的属性进行显示初始化。
       6、进行实体的构造代码块初始化。
       7、调用该实体对应的构造函数,进行构造函数初始化。
       8、将首地址赋值给p ,p变量就引用了该实体。(指向了该对象)
  • 相关阅读:
    编写一个函数,接受三个string参数,s,oldVal和newVal。使用迭代器及insert和erase函数将s中所有oldVal替换为newVal。测试你的程序,用他替换通用的简写形式,如,将“tho”,将“”“”
    输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
    oracle中 connect by prior 递归算法
    Java实现3DES加密--及ANSI X9.8 Format标准 PIN PAN获取PIN BlOCK
    XML预览
    Javascript跳转页面和打开新窗口等方法
    Eclipse读取含有extjs的项目文件时卡死或者编写ExtJS时卡
    Oracle-更新字段-一张表的字段更新另一张的表的字段
    Oracle-表被锁住
    03_Ext_Viewport_Window_Dialog
  • 原文地址:https://www.cnblogs.com/lcx90/p/5358345.html
Copyright © 2011-2022 走看看