45.定义一个类名为”MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明为()(选择两项)
46.面向对象的特征有哪些方面?请用生活中的例子来描述。
答:面向对象的三大特征:封装、继承、多态。
举例:(比如设计一个游戏)我现在创建了一个对象,名叫战士。
战士的属性是—性别,年龄,职业,等级,战斗力,血量。
它的方法—战斗,逃跑,吃饭,睡觉,死。
后来,我又建了一个对象,叫人。
属性:性别,年龄,职业,等级,血量
方法:逃跑,吃饭,睡觉,死。
我让人,成为战士的父类,战士可以直接继承人的属性和方法。
战士修改成—
属性:战斗力。
方法:战斗。
看上去战士的资料变少了,实际上没有,我们仍然可以调用方法—战士.死。
而且我们还可以重载战士.死的方法,简称重载死法。
我还建了一个对象—法师,父类也是人。
属性:法力值
方法:施法,泡妞。
你看,用了继承,创建对象变得更方便了。
再后来,我又建立了一个对象,叫怪物。
属性:等级,战力,血量。
方法:战斗,死。
建了个对象,叫白兔怪,父类怪物,可继承怪物所有的属性和方法。
属性:毛色。
方法:卖萌,吃胡萝卜。
47.说明内存泄漏和内存溢出的区别和联系,结合项目经验描述Java程序中如何检测?如何解决?
答:
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。
内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。
memory leak会最终会导致out of memory!
閱讀更多 Java淺析 的文章