A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

31. 什么是抽象类?抽象类的特点和好处是什么?
相同的方法,有相同方法的声明,但是方法体不一样,只抽取方法声明的方法,叫做抽象方法,有抽象方法的类,叫做抽象类
特点:
                A:类或者方法必须用abstract修饰
                B:具体类在继承抽象类的时候,要么本身也是抽象类,要么实现抽象类中的所有抽象方法
                C:抽象类不能被实例化。要想使用,必须按照多态的方式使用
        D:成员特点:
                a:成员变量
                        可以是变量,也可以是常量。
                b:构造方法
                        有构造方法,但是不能实例化。
                        用于子类访问父类数据的初始化。
                c:成员方法
                        可以有抽象方法也可以有非抽象方法。

好处:
        A:限定子类必须实现某些功能。
        B:提高代码的复用性。

32. 抽象类不能实例化,构造方法有什么用。
        用于子类访问父类数据的初始化。

33. 抽象类没有抽象方法,有什么意义?
        限制创建对象。

34. abstract不能和哪些关键字共存?
        final: 冲突
        private: 冲突
        static: 无意义

35. 什么是接口? 接口的特点?
如果一个抽象类中的方法全部是抽象方法,那么java就针对这种类型的抽象类,给出了一个更抽象的表达式:接口
特点:
                A:所有的方法,都是抽象方法
                B:类实现接口
                        要么本身是抽象类,要么重写接口中的抽象方法
                C:接口不能被实例化,要想使用,用多态
                D:成员特点
                        a : 成员变量
                                只有常量,并且是静态常量。默认修饰符:public static final
                        b : 构造方法
                                没有构造方法,子类数据的初始化默认走的是Ojbect类的构造方法
                        c : 成员方法
                                全部是抽象的,有默认修饰符:public abstract

36. 抽象类和接口的区别?
A:成员区别
                抽象类:
                        成员变量 : 可以是变量,也可以是常量
                        构造方法 : 有
                        成员方法 : 有,可以是抽象的,也可以是非抽象的

                接口:
                        成员变量 : 只能是常量。默认修饰符:publci static final
                        构造方法 : 没有,子类数据的初始化默认走的是Ojbect类的构造方法
                        成员方法 : 只能是抽象的,默认修饰符是:public abstract

B:类与接口的关系区别
                类与类:
                        继承关系,单继承
        类与接口:
                        实现关系,单实现、多实现
        接口与接口:
                        继承关系,单继承、多继承

C:设计理念的区别
                抽象类被继承体现的是:
is a的关系。抽象类中一般定义的是整个继承结构的共性功能
                接口被实现体现的是:
like a的关系。接口中一般定义的是整个继承结构的扩展功能

37. 什么是内部类?有什么特点?
把类定义在其他类的内部,就被称为内部类
内部类的访问特点:
                A:内部类可以直接访问外部类的成员,包括私有
                B:外部类要访问内部类的成员,必须创建对象

38. 为什么内部类访问局部变量必须加final修饰?
        A : 防止在使用后数据发生改变
        B : 延长变量的生命周期

39. 什么是匿名内部类?本质是什么?
匿名内部类就是没有名字的内部类
格式:       
                new 类名或者接口名() {
                        重写方法;
        };
本质:是继承类或者实现接口的子类匿名对象

40. ==和equals()的区别?
        A : ==
                a : 基本类型 比较的是基本类型的值
                b : 引用类型 比较的是引用类型的地址值
        B : equals()
                只能比较引用类型
                默认比较地址值

41. 什么是字符串?字符串的特点是什么?
字符串:
由多个字符组成的一串数据
特点:
一旦被赋值就不能被改变
        注意:
这里指的是字符串的内容不能发生改变。而字符串的引用是可以再次赋值的

42. String s1 = new String("hello");和String s2 = "hello";的区别?
有区别
区别是:前者创建了两个对象,后者创建了一个对象

43. String、StringBuffer、StringBuilder的区别?

        String:字符长度是固定的,StringBuffer/StringBuilder:字符长度是可变的
        StringBuffer        :        安全的,但效率较低一些
        StringBuilder        :        不安全的,但效率较高一些
        StringBuffer和StringBuilder兼容

44. 什么是基本数据包装类?
为了对基本类型的数据进行更多的操作的,java就针对每种基本类型的数据提供了对应的包装类类型
对应的类型
                byte                Byte                                        short                Short
                int                Integer                                long                        Long
                float                Float                                double                Double
                char                Character                                boolean                Boolean

45. 什么是正则表达式?
正则表达式就是符合一定规则的字符串

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马