A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 读书少,表骗我 中级黑马   /  2016-5-25 00:53  /  334 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

23:代码块是什么?代码块的分类有哪些及每种代码块的作用是什么?

用{}括起来的代码,就叫代码快。

分为:
        A:局部代码快: 就是在方法中用{}括起来的代码。作用是限定变量的生命周期,提高效率。

        B:构造代码快:在类中,方法外。用{}括起来的代码。作用是把所有构造方法中相同的内容抽取出来,
        定义到构造代码块中,将来在调用构造方法的时候,会去自动调用构造代码块。构造代码快优先于构造方法。

        C:静态代码快:在类中、方法外。用{}括起来的代码。只不过加了static修饰。
        作用是:随着类的加载而加载,而且只加载一次的代码。




24:一个类的实例化过程有哪些步骤?(*面试题)
        Student s = new Student(); 在内存中到底执行了哪些步骤。

1,加载Sutdent.class文件进内存(类加载器)

2,在栈内存为 s 变量申请一个空间

3,在堆内存为Student对象申请空间

4,对类中的成员变量进行默认初始化

5,对类中的成员变量进行显示初始化

6,有构造代码块就先执行构造代码块,如果没有,则省略

7,执行构造方法,通过构造方法对对对象数据进行初始化

8,堆内存中的数据初始化完毕,把内存值复制给 s 变量



26:继承是什么?继承的好处是什么?Java中的继承特点是什么?

继承就是:把多个类中相同的内容提取出来,定义到一个类中。
          然后让这多个类和这个类产生一个关系,这多个类就具备该类的数据了。
          这种关系叫:继承。

继承的好处是:提高代码的复用性,提高了代码的维护性,让类与类之间产生了一个关系,是多态的前提。

继承的特点是:Java中类只能够单继承,但是可以多层继承。




27:方法重写和重载有什么区别?重载可以改变返回值类型吗?(*面试题)

方法重写:子类中出现和父类一模一样的方法声明的方法。

方法重载:同一个类中,出现的方法名相同,参数列表不同的方法。

重载可以改变返回值类型,因为跟返回值无关。




28:子父类中构造方法的执行有什么特点?为什么要这样?
       
        子类构造方法的执行,首先会去执行父类的构造方法。

        因为子类中可能直接访问了父类的数据,父类的数据要优先于子类的数据进行初始化。



29:静态代码块,构造代码块,构造方法的执行顺序是什么?

        静态代码块 -- 构造代码块 -- 构造方法




30:final关键字是什么,可以修饰什么,有什么特点?

final关键字:是最终意思,可以修饰类、方法、变量。
        修饰类:类不可以被继承。
        修饰方法:方法不可被重写
        修饰变量:变量为常量。



31:多态是什么,前提是什么?

多态:对象在不同时刻表现出来的多种状态。是一种编译时期状态和运行时期状态不一致的现象。
        成员变量:编译看左边,运行看左边。
        成员方法:编译看左边,运行看右边。因为,普通成员方法可以重写,变量不可以。
        静态方法:编译看左边,运行看左边。
       

前提:类与类之间要有继承关系。要有方法的重写。父类引用指向子类对象。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马