广东财经大学华商学院 广州华商职业学院 华商开心网

 

 

搜索
查看: 1772|回复: 0
go

[经验交流] Java面试题-代码与编程部分 [复制链接]

Rank: 4

UID
2079 
金币
0  
银币
171  
铜币
253  
在线时间
5 小时 
注册时间
2010-11-20 
最后登录
2014-6-10 
楼主
发表于 2010-12-15 13:36 |只看该作者 |倒序浏览 |打印
Java面试题-代码与编程部分

java 私塾整理面试题系列----java篇-代码与编程部分,先看两道题。另外,java 私塾课堂实录视频,初级到高级都很经典,很适合深入学习。

1、写一个Singleton出来

答:Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。

一般Singleton模式通常有几种形式。

第一种形式

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

  1. public class Singleton {
  2.     private Singleton(){}
  3.   //在自己内部定义自己一个实例,是不是很奇怪?
  4.   //注意这是private 只供内部调用
  5.   private static Singleton instance = new Singleton();
  6.   //这里提供了一个供外部访问本class的静态方法,可以直接访问  
  7.   public static Singleton getInstance() {
  8.     return instance;   
  9.   }
  10. }
复制代码


第二种形式

  1. public class Singleton {
  2.   private static Singleton instance = null;
  3.   public static synchronized Singleton getInstance() {
  4.   //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次,使用时生成实例,提高了效率!
  5.     if (instance==null)
  6.     instance=new Singleton();
  7.         return instance;
  8.   }
  9. }
复制代码


其他形式

定义一个类,它的构造函数为private的,所有方法为static的。

一般认为第一种形式要更加安全些

2、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?

答:父类:

  1. package test;
  2. public class  FatherClass
  3. {
  4.     public FatherClass()
  5. {
  6.   System.out.println(FatherClass Create);
  7. }
  8. }
复制代码


子类

  1. package test;
  2. import test.FatherClass;
  3. public class  ChildClass extends FatherClass{
  4.   public ChildClass() {
  5.     System.out.println(ChildClass Create);
  6.   }
  7.   public static void main(String[] args)  {
  8.     FatherClass fc = new FatherClass();
  9.     ChildClass cc = new ChildClass();
  10.   }
  11. }
复制代码


输出结果:
Cjava test.ChildClass
FatherClass Create
FatherClass Create
ChildClass Create
‹ 上一主题|下一主题
你需要登录后才可以回帖 登录 | 注册

华商开心网

GMT+8, 2026-5-1 03:03 , Processed in 0.036165 second(s), 10 queries .

Powered by Discuz! X1.5

© 2001-2010 Comsenz Inc.