第一范文网 - 专业文章范例文档资料分享平台

JAVA考核题-面向对象选择题(答案)

来源:用户分享 时间:2025/5/22 5:05:52 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

技术改变世界 创新驱动发展

}

}

// prtMsg的方法体

System.out.println(id + name);

3、改正下面程序段中的错误(共5处)

public class Student{ String id; String name; int salary;

public void Test(String id, String name, int salary){ //1:意图为该方法为构造方法,需去掉返回值,并改正方法名 this.id = id; this.name = name; this.salary = salary; }

public void changeInfo(String id, int salary){ //2:返回值改为boolean boolean result;

if(id == this.id){ //3:==改为equals()方法 this.salary = salary;

result = TRUE; //4:改为true

}else{

result = false;

}

return result;

}

public booleanchangeInfo(String ids, intsalarys){ //5:方法重复定义,并不是重载 ?? } }

4、写一个Singleton出来。

解答:

解析:Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。它必须自行创建这个唯一的实例,必须自行向整个系统提供这个实例。使用单例模式的一个必要条件:在一个系统中要求只有一个类的实例时应当使用单例模式,反过来说如果一个类可以有几个实例共存,那么就没有必要使用单例类。

一般Singleton模式通常有以下几种形式。 (1)第一种形式-饿汉式单例类:

定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例化,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。

public class Singleton {

您的未来就是我们的未来

技术改变世界 创新驱动发展

// 在自己内部定义自己一个实例,是不是很奇怪? private static Singleton instance = new Singleton(); // 注意这是private 只供内部调用 private Singleton() { } // 这里提供了一个供外部访问本class的静态方法,可以直接访问 public static Singleton getInstance() { return instance; } }

(2)第二种形式-懒汉式单例类:第一次调用才初始化。 public class GoodSingleton { // 在自己内部定义自己一个实例,是不是很奇怪? private static GoodSingleton instance = null; // 注意这是private 只供内部调用 private GoodSingleton() { } //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次 //使用时生成实例,提高了效率

public static synchronized GoodSingleton getInstance() { if(instance == null){ return new GoodSingleton(); }else{ return instance; } } }

//懒汉式的另一种改进

public class GoodSingleton { // 在自己内部定义自己一个实例,是不是很奇怪? private volatile static GoodSingleton instance; // 注意这是private 只供内部调用 private GoodSingleton() { } // 两次检查 public static GoodSingleton getInstance1() { if (instance == null) {

您的未来就是我们的未来

技术改变世界 创新驱动发展

synchronized (GoodSingleton.class) { if (instance == null) { instance = new GoodSingleton(); } } } return instance; } }

(3)登记式单例类:为了克服饿汉式和懒汉式单例类不可继承的缺点而设计的。 5、补足代码

packagelianxi; interface Interface { }

class Test{ }

public class Lianxi{ } 答案:

interface Interface { }

class Test{

void method();

//补上代码,通过匿名内部类

public static void main(String[] args) { }

Test.function().method();

void method();

public static Interface function() {

//补上代码,通过匿名内部类 return new Interface(){

public void method() {

System.out.println(\

您的未来就是我们的未来 技术改变世界 创新驱动发展

}

}

};

}

public class Lianxi{ }

public static void main(String[] args) { }

// 解析:读懂本句代码是解题关键 Test.function().method();

您的未来就是我们的未来

搜索更多关于: JAVA考核题-面向对象选择题(答案) 的文档
JAVA考核题-面向对象选择题(答案).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c17meq8mckt1od1f2lz2e_7.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top