zoukankan      html  css  js  c++  java
  • Java攻城狮面试题录:笔试篇(1)

    1、作用域public,private,protected,以及不写时的区别
    答:区别如下:
    在这里插入图片描述
    不写时默认为friendly

    2、ArrayList和Vector的区别,HashMap和Hashtable的区别
    答:就ArrayList与Vector主要从二方面来说.
    一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的
    二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半
    就HashMap与HashTable主要从三方面来说。
    一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现
    二.同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的
    三.值:只有HashMap可以让你将空值作为一个表的条目的key或value

    3、char型变量中能不能存贮一个中文汉字?为什么?
    答:是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字节,所以放一个中文是没问题的

    4、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
    答:多线程有四种实现方法,最常用的两种分别是继承Thread类与实现Runnable接口
    同步的实现方面有两种,分别是synchronized,wait与notify

    5、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?
    父类:
    package test;
    public class FatherClass
    {
    public FatherClass()
    {
    System.out.println(“FatherClass Create”);
    }
    }
    子类:
    package test;
    import test.FatherClass;
    public class ChildClass extends FatherClass
    {
    public ChildClass()
    {
    System.out.println(“ChildClass Create”);
    }
    public static void main(String[] args)
    {
    FatherClass fc = new FatherClass();
    ChildClass cc = new ChildClass();
    }
    }

    输出结果:
    C:>java test.ChildClass
    FatherClass Create
    FatherClass Create
    ChildClass Create

    6、内部类的实现方式?
    答:示例代码如下:
    package test;
    public class OuterClass
    {
    private class InterClass
    {
    public InterClass()
    {
    System.out.println(“InterClass Create”);
    }
    }
    public OuterClass()
    {
    InterClass ic = new InterClass();
    System.out.println(“OuterClass Create”);
    }
    public static void main(String[] args)
    {
    OuterClass oc = new OuterClass();
    }
    }
    输出结果:
    C:>java test/OuterClass
    InterClass Create
    OuterClass Create

    再一个例题:
    public class OuterClass {
    private double d1 = 1.0;
    //insert code here
    }
    You need to insert an inner class declaration at line 3. Which two inner class declarations are
    valid?(Choose two.)
    A. class InnerOne{
    public static double methoda() {return d1;}
    }
    B. public class InnerOne{
    static double methoda() {return d1;}
    }
    C. private class InnerOne{
    double methoda() {return d1;}
    }
    D. static class InnerOne{
    protected double methoda() {return d1;}
    }
    E. abstract class InnerOne{
    public abstract double methoda();
    }
    选择题说明如下:
    一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。 故 A、B 错
    二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;return d1 出错。
    故 D 错
    三.非静态内部类的非静态成员可以访问外部类的非静态变量。 故 C 正确
    四.答案为C、E

  • 相关阅读:
    git add 添加错文件 撤销
    工作流Activiti5.13学习笔记(一)
    instanceof, isinstance,isAssignableFrom的区别
    oracle表查询速度极慢的处理过程记录一下
    类里面的成员变量如果是public,为什么破坏封装
    IPv4 IPv6验证
    枚举使用
    XML之命名空间的作用(xmlns)
    XSD-JAVA
    jaxb
  • 原文地址:https://www.cnblogs.com/blackjoyful/p/11539785.html
Copyright © 2011-2022 走看看