java吧 关注:1,216,828贴子:12,668,574

程序媛的日常

取消只看楼主收藏回复

小女子是一枚女程序员,本帖是用来分享自己遇到过的一些面试题目和网上搜集到的一些面试题和答案,如果有不足之处,欢迎各位指点哦。也希望大家能分享自己遇到的面试题,大家一起来讨论。有找工作需要的同学可以私信我你的联系方式,可以内推哈。


1楼2019-05-18 15:06回复
    问:请你介绍下面向对象的特征
    答:面向对象有三种特性,封装,继承,多态。
    封装可以把软件分隔成一个一个的模块,实现高内聚,低耦合。
    继承是子类共享父类的属性和方法的一种机制,提供软件的可重用性和可扩展性。
    多态是指不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态。


    2楼2019-05-18 15:26
    收起回复
      问:抽象类和接口有什么区别
      答:抽象类的方法不币是抽象的,接口重的所有方法必须是抽象的。
      抽象类不能有抽象构造方法,抽象静态方法。
      抽象类中可以有普通成员变量,接口中没有普通成员变量。
      接口中的方法默认为public abstract,成员变量类型默认为public static final。
      一个类可以实现多个接口但只能继承一个抽象类。


      35楼2019-05-20 08:59
      收起回复
        问:Overload和Override的区别
        答:Overload是重载的意思,Override是覆盖的意思,也就是重写,重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同) ,重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象编程的多态性的一种表现。


        40楼2019-05-20 14:17
        回复
          问 :构造方法是否可被override(重写)
          答:构造方法不能被继承,因此不能重写Override但可以被重载Overload


          42楼2019-05-20 15:05
          回复
            问:this与super有什么区别
            答:this是指向当前实例对象,他的一个非常重要的作用就是用来区分对象的成员变量与方法的形参,当一个方法的形参与成员变量的名字相同时就会覆盖成员变量。
            super可以用来访问父类的方法或成员变量,当子类的方法或成员变量与父类有相同的名字时也会覆盖父类的方法或成员变量,要想访问父类的方法或成员变量只能通过super关键字来访问。


            44楼2019-05-20 16:07
            收起回复
              有的童鞋可能会觉得我现在分享的面试题都太简单了,太容易了,可能你现在是大神哈,不过总是有的童鞋需要了解这些基础的,简单的题目嘛,后面我也会分享更深层次的java面试题。也欢迎大家分享自己遇到的题目嘛,或者你可以在这里写出你认为怎么考察一名程序员的好题目啊。


              45楼2019-05-20 16:14
              回复
                看到很多童鞋说我是培训的,我声明下哈,绝对不是。开贴就是想记录下面试题,自己总结下,由浅入深,由易到难。有的童鞋私信我有没有其他的面试题,我会慢慢在帖子里面更新啦。你们也可以把你们遇到的面试题和解法拿出来说说啊,不要老是我一个人发,我一个人说感觉挨了好多砖啦。


                63楼2019-05-21 08:51
                回复
                  问:组合与继承有什么区别
                  答:组合是指在新类里面创建原有类的对象重复利用已有类的功能,继承是面向对象的主要特性之一它允许设计人员根据其他类的实现来定义一个类的实现。
                  除非两个类之间是is-a的关系否则不要轻易使用继承,因为过多的使用继承会破坏代码的可维护性,如果类之间不是is-a的关系,就可以通过实现组合的方式来实现相应的功能。


                  64楼2019-05-21 08:55
                  回复


                    65楼2019-05-21 08:56
                    回复
                      问:面向对象和面向过程的区别
                      面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
                      面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。


                      69楼2019-05-21 14:00
                      回复
                        面向对象的暂时分享到这里啦,欢迎各位童鞋来分享你们觉得好的面试题哦。


                        70楼2019-05-21 14:03
                        回复
                          不错不错


                          来自Android客户端73楼2019-05-21 21:45
                          回复
                            后面我要来回答这题


                            来自Android客户端74楼2019-05-21 21:46
                            收起回复
                              问:Java中什么是Exception
                              带:Exception是JAVA异常类,Exception是Throwable的子类,Exception分为检查型异常和非检查型异常


                              85楼2019-05-24 10:18
                              回复