UDN-企业互联网技术人气社区

板块导航

浏览  : 1742
回复  : 1

[面试经历] 【转】java面试一些总结

[复制链接]
梦回三国的头像 楼主
发表于 2015-9-15 18:25:11 | 显示全部楼层 |阅读模式
1. 方法重写
    方法重写(overiding method)
  在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法
  的重写。方法重写又称方法覆盖。 若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。      
                    如需父类中原有的方法,可使用super关键字,该关键字引用了当前类的父类。
  
   方法重写的特性
关于方法重写的一些特性:
        
   1.发生方法重写的两个方法返回值、方法名、参数列表必须完全一致(子类重写父类的方法)
  2.子类抛出的异常不能超过父类相应方法抛出的异常(子类异常不能大于父类异常)
  3.子类方法的访问级别不能低于父类相应方法的访问级别(子类访问级别不能低于父类访问级别)
   
2. 方法重载
  一.方法名一定要相同。   二.方法的参数表必须不同,包括参数的类型或个数,以此区分不同的方法体。
    1.如果参数个数不同,就不管它的参数类型了!   2.如果参数个数相同,那么参数的类型或者参数的顺序必须不同。
    三.方法的返回类型、修饰符可以相同,也可不同。
3.  抽象类
用 abstract 修饰的类是抽象类。
  在C++中,含有纯虚拟函数的类称为抽象类,它不能生成对象。
凡是包含纯虚函数的类都是抽象类。
  抽象类是不完整的,并且它只能用作基类。它与非抽象类的不同:
1、抽象类不能直接实例化,并且对抽象类使用 new
  运算符是编译时错误。虽然一些变量和值在编译时的类型可以是抽象的,但是这样的变量和值必须或者为
  null,或者含有对非抽象类的实例的引用(此非抽象类是从抽象类派生的)。
  2、允许(但不要求)抽象类包含抽象成员,允许实体方法
3、抽象类不能被密封。
    当从抽象类派生非抽象类时,这些非抽象类必须具体实现所继承的所有抽象成员,从而重写那些抽象成员。在下边的示例中:   abstract
  class A{ public abstract void F();}
abstract class B: A{ public
  void G() {}}
class C: B{ public override void F() { // actual
  implementation of F }}
抽象类 A 引入抽象方法 F。类 B 引入另一个方法 G,但由于它不提供 F
  的实现,B 也必须声明为抽象类。类 C 重写 F,并提供一个具体实现。由于 C 中没有了抽象成员,因此可以(但并非必须)将 C
  声明为非抽象类。记住
     抽象类与接口紧密相关。然接口又比抽象类更抽象,这主要体现在它们的差别上:1)类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承,从抽象类派生的类仍可实现接口,从而得出接口是用来解决多重继承问题的。2)抽象类当中可以存在非抽象的方法,可接口不能且它里面的方法只是一个声明必须用public来修饰没有具体实现的方法。3)抽象类中的成员变量可以被不同的修饰符来修饰,可接口中的成员变量默认的都是静态常量(static final)。4)这一点也是最重要的一点本质的一点"抽象类是对象的抽象,然而接口是一种行为规范"。
  
4 interface 接口
  
   接口是一套规范,满足这个规范的设备,我们就可以把他们组装到一起,从而实现该设备的功能。
    接口种类丰富能够扩大产品的功能  
  接口同样是一种规范和标准。它们可以约束类的行为
   
5 泛型   
  
  泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率
  
    5、泛型的参数类型还可以是通配符类型
   在类和接口 方法中使用
   
6  java中的main()方法
  必须写成public static void main(String args[]){
    }
7
   oracle如何把序列赋给表 创建一个序列 然后创建一个触发器  
8  java中switch(变量)类型有哪些
  
  char  int  byte   short
   
9
   序列化就是将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得。
    序列化分为两大部分:序列化和反序列化。序列化是这个过程的第一部分,将数据分解成字节流,  
   以便存储在文件中或在网络上传输。反序列化就是打开字节流并重构对象。
   
  对象序列化不仅要将基本数据类型转换成字节表示,有时还要恢复数据。
     恢复数据要求有恢复数据的对象实例
   序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements
  Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。


  本文出自 “
  java开发
  ” 博客,请务必保留此出处
  http://sihairouqing.blog.51cto.com/2875642/718378

发表于 2015-9-15 18:51:27 | 显示全部楼层

序列化考的概率挺高的
使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们
联系我们
  • 电话:010-86393388
  • 邮件:udn@yonyou.com
  • 地址:北京市海淀区北清路68号
移动客户端下载
关注我们
  • 微信公众号:yonyouudn
  • 扫描右侧二维码关注我们
  • 专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041 京ICP备05007539号-11 京公网网备安1101080209224 Powered by Discuz!
快速回复 返回列表 返回顶部