面向对象知识理论

1.什么是类?什么是对象?类和对象的关系是什么? 

  •        类是抽象的概念,仅仅是模板 
  •        对象是一个你能够看得到、摸得着的具体实体 
  •        类是对象的类型,对象是类的实例化,具体化 

2.类的方法中,有返回值和无返回值分别什么时候使用?

  •        有返回值:想要通过方法得到一个固定的结果
  •        无返回值:只需要执行即可

3. break,continue,return的作用分别是什么?

  •        Break:在switch中,跳出switch结构;在循环中,跳出当前循环,执行循环后面的代码
  •        Continue:在循环中,跳过本次循环,执行下一次循环
  •        Return:结束当前方法,并返回结果值

4. 成员变量和局部变量区别?

       作用域不同:

  •         局部变量的作用域仅限于定义它的方法
  •         成员变量的作用域在整个类内部

       初始值不同:

  •         Java会给成员变量一个初始值
  •         Java不会给局部变量赋予初始值

5. 形参和实参的特点?

  •        实参的类型、数量、顺序都要与形参一一对应

6. 导包的快捷键?

  •        Ctrl+shift+o

7. 抽象出类的三个步骤?     

       a. 找出它的种类b. 找出它的属性 c. 找出它的行为 

8. 构造方法的作用?   

           创建对象(实例化对象)(构造对象) 

9. 方法的重载和方法的重写?

   位置   方法名  参数表  返回值  访问修饰符

重写  子类  相同   相同  相同或是其子类 不能比父类更严格

重写  同类  相同   不相同  无关   无关

10. static关键字的作用? 

修饰属性:可以通过对象和类名调用

修饰方法:可以通过对象和类名调用 

修饰代码块

11. 封装的概念?好处?

概念:将类的信息隐藏,不允许外部访问,通过该类提供的方法来操作和访问 

好处:

  •  隐藏类的实现细节 
  •  方便加入控制语句  
  •  方便修改实现
  • 只能通过规定方法访问数据 

12. this关键字的作用?

调用当前类的属性和方法

代表当前类的对象

13. 继承的好处是什么?关键字是什么?

       好处:减少代码量、 减少代码冗余 、 代码复用 

       关键字:extends

14. 什么情况不能继承?

       Private修饰

       子类与父类不在同包,使用默认访问权限的成员

       构造方法 

15. 访问修饰符及其对应的权限?

       访问修饰符: private、 默认(friendly)、 protected、public 

       访问权限

       Private:本类 

       默认: 本类 , 同包

       Protected: 本类 , 同包 , 子类

       Public: 本类同包 子类 其他 

16. 多重继承关系的初始化顺序?

       顺序:父类属性à父类构造方法à子类属性à子类构造方法

17.super关键字的作用?

       调用父类属性和方法

       调用父类构造,只能在子类构造中的第一句 

18. 抽象类和抽象方法的特点分别是什么?

       抽象类:可以有抽象方法、 无法实例化 

       抽象方法: 抽象方法没有方法体、 抽象方法必须在抽象类里 、抽象方法必须在子类中被实现,除非子类是抽象类 

19. final关键字的作用?

       修饰属性,无法被重新赋值,无法修改

       修饰方法,不能被重写 

       修饰类,不能被继承 

20. 什么是多态?

       同一个引用类型,使用不同的实例执行不同操作(声明父类,new子类)  

21. 构成多态的三个要素是什么?

       继承关系

       子类重写父类方法 

       父类的引用指向子类的对象

22. instanceof关键字的作用?

       对象 是否属于 某个类 

23. 接口的特点?

       接口不可以被实例化

       实现类必须实现接口的所有方法 

       实现类可以实现多个接口 

       接口中的变量都是静态常量 

24. 对比抽象类和接口?

       相同点:都是抽象层 、不能被实例化 、包含抽象方法 

       不同点: 抽象类便于复用、接口便于代码维护 、 一个类只能继承一个直接的父类,但可以实现多个接口 

25. 什么是异常?

       程序的运行过程中所发生的不正常的事件(错误)

       会中断正在运行的程序 

26. .异常的处理方式?

       使用try-catch(try-catch-finally)块捕获异常 

27. 说出常见的五个异常,及其作用?

异 常 类 型

说    明

Exception

异常的父类

ArithmeticException

算术异常  运算异常

ArrayIndexOutOfBoundsException

数组下标越界

NullPointerException

空指针异常

ClassNotFoundException

类无法加载

IllegalArgumentException

非法参数

ClassCastException

类转换异常

NumberFormatException

数字格式转换异常


28. try-catch块中存在return语句,是否还执行finally块,如果执行,说出执行顺序? try-catch- finally块中, finally块唯一不执行的情况是什么?

不能

       顺序: 发生异常,进入异常匹配,进入catch,执行finally,最后再返回catch块,执行return

       唯一结束finally方式: System.exit()方式

29. throw和throws的区别?

       Throw:抛出异常,主动产生一个异常错误 、抛出前必须先声明异常

       Throws:声明异常,声明当前方法可能会出现的异常错误 

30.根据日志记录器输出级别,从小到大,按顺序写出?( debug , warn , error , info )?

       debug<info<warn<error 

猜你喜欢

转载自blog.csdn.net/qq_41305159/article/details/79254198