一,Java基础知识考察

1.什么是javaBeen

答:JavaBean是符合某种特定范式的Java类。使用JavaBeans的好处是解决代码复写,减少代码冗余,提高代码可维护性

2.说明类、抽象类、接口的定义,简要说明他们之间的联系和差别

答: 类:类是一个模板,它描述一类对象的行为和状态。   [public]  class Test { } 
        抽象类:包含抽象方法的类称为抽象类                 [public] abstract class Test { }
        接口:接口泛指供别人调用的方法或者函数        [public] interface Test { }

        抽象类和类的区别:如果包含抽象方法必须使用抽象类;
        抽象类和接口的区别:语法层上的区别:
                                                 1)一个类只能继承一个抽象类,但可以实现多个接口
                                                 2)抽象类中的成员变量可以是任何类型,接口中的成员变量只能是public static final 类型
                                                 3)抽象类可以静态代码块和静态方法,接口不可以
                                            设计层上的区别 
                                                 1)抽象类是对一种食物抽象,,接口是对行为冲向
                                                 2)抽象类作为很多子类的父类,是一种版模式设计。接口是一种行为规范,是辐射式设计

3.列举说明Collection,List,Set,Map,有哪些典型的实现,个有哪些特点

7.请简述socket的通讯过程

    1)建立服务端ServerSocket和客户端Socket
    2)打开连接到Socket的输出输入流
    3)按照协议进行读写操作
    4)关闭相对应的资源

9.什么叫对象序列化?通常会在什么情况下用到它?哪些类型的数据默认实现了序列化

答:把对象转化成字节序列的过程称为对象序列化;
       什么情况下要用:
                      1)把的内存中的对象状态保存到一个文件中或者数据库中时候;
                      2)  用套接字在网络上传送对象的时候;

12,请阐述java语言中的反射机制,请编写一段代码进行说明

答:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用           它的任意一个方法和属性

package com.test;

public class User {
  private String name = "laobai";
  private int age;
  public User() {}
  public User(String name, int age) {
    super();
    this.name = name;
    this.age = age;
  }
  private String getName() {
    return name;
  }
  private void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  @Override
  public String toString() {
    return "User [name=" + name + ", age=" + age + "]";
  }
}
public class ReflectTest {
  private static Logger logger = Logger.getLogger(ReflectTest.class);
  private static Class<User> userClass = User.class;
}