关闭

面向对象_构造函数_this

88人阅读 评论(0) 收藏 举报
分类:
面向对象
        是一种对现实世界理解和抽象的方法
        思想:由复杂变简单,有执行者转换为指挥者
               
1、面向过程:打开、存储、关闭

2、三个特征:封装、继承、多态

3、        定义类,就是在描述事物,就是在定义属性和行为,属性和行为共同成为类

中的成员(成员变量和成员方法)
        属性对应是类中变量,行为对应的是类中的函数

4、成员变量和局部变量
        1)成员变量作用于整个类中
           局部变量作用于函数中,或者语句中
        2)在内存中的位置
           成员变量:在堆内存中,因为对象的存在,才在内存中存在
           局部变量:存在栈内存中

5、匿名对象:适用于调用外函数时,定义
        例:new car().num=1;
            new car().color=red;
            new car().run();   //共匿名定义了三个对象

6、封装 Encapsulation

7、构造函数的作用:可以用于给对象进行初始化
           小细节:当一个类中没有定义构造函数时,系统会默认给该类加入一个构造函数。
   
8、构造函数和一般函数在写法上有不同

   构造函数是在对象已建立就运行,给对象初始化。
   而一般方法是对象调用执行,给是对象添加对象具备的功能

   在运行上也有不同。

   一个对象建立,构造函数就执行一次
   而一般方法可以被该对象调用多次。

9、什么时候定义构造函数?
   当分析事务时,该事物存在具备一些特性或者行为,那么将这些内容定义在构造函数中。

10、构造代码块
class car
{
        private String name;
       
        {
                system.out.println("123")
        }//构造代码块
}
        作用:给对象进行初始化。
        对象已建立就运行,而且优先于构造函数执行。

        和构造函数的区别:
        构造代码块是给所有对象进行统一初始化的。
        而构造函数是给对应的对象初始化

        构造代码块中定义的是不同对象共性的初始化内容。

11、this:看上去,是用于区分局部变量和成员变量同名情况
    1)
    this为什么可以解决这个问题?

    this到底代表的是什么?
        这个对象
    2)
    this代表它所在函数所属对象的引用
    简单说:哪个对象在调用this所在的函数,this就代表哪个对象

    3)this的应用:当定义类中功能时,该函数内部要用到调用该函数的对象时,这时用this来表示这个对象
class car
{
        public boolean compare(car c)
        {
                if(this.color==c.color)//this->c1,c->c2
                {}
        }
}
...
car c1=new car();
car c2=new car();
boolean b=c1.compare(c2);
      
    4)this语句:用于构造函数之间进行互相调用
      this语句只能定义在构造函数的第一行,因为初始化要先执行。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2099次
    • 积分:253
    • 等级:
    • 排名:千里之外
    • 原创:25篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档