学习笔记(一)

来源:互联网 发布:2016美工电脑配置 编辑:程序博客网 时间:2024/06/03 18:37

1.几个应该注意的问题。
    (1)如果5.0编译器默认把它定位双精度的。
    (2)20编译器默认把它定位整型的。
2.  int a=3;
    a=a++;
    //a为多少3
    //赋值运算符主要是计算后面的值,赋值操作只是一个副作用,最后在做。所以为3.

 

(上午)1.在调用类的构造函数时JVM完成内存的申请,初始化,返回一个指向申

请内存的指针。内存的大致结构为变量,栈,堆,方法区。(其实函数也是一种变

量,指向该函数的方法区)栈里面是确定的东西,而堆里面是不确定的东西。
2.this在构造函数执行前就有,指向该对象的一个指针。可以用该指针调用参数,

调用方法,如构造函数。形如:
     Test(int x,int y,int z)
{
     this(x,y);//用this调用构造函数必须放在第一行,为了防止申请两块内存

空间,JVM如在第一行               //发现用this调用构造函数就不申请内存空

间,否则申请一块内存空间。
     this.z=z;
}
    Test(int x,int y)
{
   this.x=x;
   this.y=y;
}
   这就是函数的重载。
   JVM对重载函数只是把它的名改了,改为带有参数的函数名,用以区分不同的方

法区。
3. Has A其实跟Is A没多大区别,因为有了一个对象后,就可以操作它的方法,跟

继承没多大区别。
   java主要是JVM,即类的加载和内存的管理。
(下午)
     在继承的时候,覆盖了原来的方法,变量名相同的只是增加(当然得加别名

)。所以用父类可以访问父类的变量,但只能访问子类的方法。
     super跟this差不多.super.方法  super调用父类的构造函数。
 抽象类和接口
     抽象类跟普通类的唯一区别就是抽象类不能new .
     接口是纯的抽象类,定义一种标准。
4.java的继承是先在内存中生成一个父类,然后再加点别的东西。所以改变父类时

不用编译父类就可以,而c++时指向父类的指针,在改变父类时必须编译父类。

原创粉丝点击