zoukankan      html  css  js  c++  java
  • 面试问题汇总

    java中子类能不能继承父类构造方法?

     首先来看一下下面这个例子:

    结果有些和想象中的不一样吧。

    原因如下:其实每个子类构造方法的第一条语句,都是隐含地调用super(),如果父类没有这种形式的构造函数,那么在编译的时候就会报错。

    所以父类中的构造方法是不能继承的,但是在实例化子类的时候会调用父类的构造方法

    如何让一个java类不被继承?

    当父类被修饰符private修饰时,或当final修饰的类时不能被子类继承,但是final用于修饰方法时,该方法能被继承

    final表示最终的意思,它修饰的类是不能被继承的;final修饰的方法能被继承(Math类里就有),但是不能够被重写。其实关系并不复杂,你只需要记住这样一句话:final可用于声明属性、方法和类,分别表示属性不可变,方法不可重写,类不可继承。

    Oracle trunc()函数和round函数的用法?

    SELECT TRUNC(number,num_digits)FROM DUAL 

    说明:
    Number 需要截尾取整的数字。 
    Num_digits 用于指定取整精度的数字。Num_digits 的默认值为 0。
    TRUNC()函数截取时不进行四舍五入

    select trunc(123.458) from dual --123
    select trunc(123.458,0) from dual --123
    select trunc(123.458,1) from dual --123.4
    select trunc(123.458,-1) from dual --120
    select trunc(123.458,-4) from dual --0
    select trunc(123.458,4) from dual  --123.458

    SELECT ROUND( number, [ decimal_places ] ) FROM DUAL

    说明:

    number : 将要处理的数值

    decimal_places : 四舍五入,小数取几位,不填默认为0

    select round(123.456) from dual;              结果: 123

    select round(123.456, 0) from dual;          结果: 123

    select round(123.456, 1) from dual;          结果: 123.5

    select round(123.456, 2) from dual;          结果:123.46

    select round(123.456, 3) from dual;          结果: 123.456

    select round(-123.456, 2) from dual;         结果:-123.46

    抽象类可以不包含抽象方法,但有抽象方法的类一定要声明为抽象类!!!

    Java程序中的类名称必须与存放该类的文件名相同?

    错,声明为public类型的类名必须与文件名相同,默认权限的可以不同

    并且内部类的类名一般与文件名不同

    简单的做个关于抽象类和接口的总结吧:

    区别1:抽象类体现继承关系,一个类只能単继承。接口体现实现关系,一个类可以多实现。
    区别2:抽象类中可以定义非抽象方法和抽象方法,子类继承后可以直接使用非抽象方法。接口的方法都            是抽象的,必须由子类去实现。接口中的成员都有固定的修饰符。
    区别3:抽象类有构造方法,用于给子类对象初始化。而接口没有构造方法。
    特点1:抽象类不可以实例化,即不能用new创建对象。抽象类必须由其子类覆盖了所有的抽象方法后,           该子类才可以实例化,否则,这个子类也是抽象类。
    特点2:抽象类abstract关键字不能和哪些关键字共存:
    • final 因为final修饰的方法不能被继承。
    • static因为类.方法(),此方法没有方法体,没有意义。
    • private 因为抽象方法是要被子类覆盖的,加上private子类就不知道这个方法了。
    特点3:接口中声明变量必须是final、public 、static的,接口中定义的方法都是abstract、                    public的。接口里的数据成员必须初始化,且全是常量,不是变量。
    特点4:接口是抽象类的 变体( 你没看错 ), 接口也可以通过关键字extends来继承其他接                  口。格式如下所示:
                class 类名称 implements 接口A,接口B{   //接口的实现}
                interface 子接口名称 extends 父接口1,父接口2,...{}
  • 相关阅读:
    计算机网络-URL/URI/URN
    计算机网络-应用层之HTTP协议
    计算机网络-传输层-TCP之三次握手/四次握手
    requests之一:HTTP请求 状态码
    python排序中sort()与sorted()的用法与区别
    列表(list)之三 -如何较为均匀的将任意字符串按指定组数分组,方差最少
    列表(list)之二 -运用篇 -快速生成规律性列表
    DES加密解密
    c# json转Dictionary字典
    导出Excel事例
  • 原文地址:https://www.cnblogs.com/king-brook/p/10414831.html
Copyright © 2011-2022 走看看