java面向对象编程
婷婷T
Bug层出不穷,人生永无止境
展开
-
十三、多线程
一、请你简述一下你对进程和线程的理解?答:进程是指运行中的应用程序,每一个进程都有自己独立的内存空间。线程是指进程中的一个执行流程。一个进程可以由多个线程组成,即一个进程中可以同时运行多个不同的线程,它们分别执行不同的任务。进程与线程的主要区别在于:每个进程都需要操作系统为其分配独立的内存地址空间,而同一进程中的所有线程在同一块地址空间中工作,这些线程可以共享同一块内存和系统资源。...原创 2020-02-02 23:42:27 · 104 阅读 · 0 评论 -
十二、内部类
一、请问内部类按照作用域可如何分类?答:内部类分为成员内部类和局部内部类。成员内部类又分为实例内部类和静态内部类。二、请问内部类的用途是什么?答:①封装类型;②直接访问外部类的成员;③回调外部类的方法;...原创 2020-02-02 17:13:57 · 76 阅读 · 0 评论 -
十一、对象的生命周期、构造方法、静态工厂方法、单例类、枚举类、不可变类
一、请问如何创建对象的方式都有哪些?答:①用new语句创建对象;②调用对象的clone()方法;③运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。④运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。二、请问构造方法满足哪...原创 2020-02-02 17:05:32 · 159 阅读 · 0 评论 -
十、类的生命周期
一、请问什么是java虚拟机的生命周期?java虚拟机如何结束生命周期?答:java虚拟机进程从启动到终止的过程,称为java虚拟机的生命周期。在以下情况下,java虚拟机将结束生命周期:①程序正常执行结束。②程序在执行过程中出现异常或错误而异常终止。③执行了System.exit()方法。④由于操作系统出现错误而导致java虚拟机进程终止。二、 请问类的加载指的是什么?...原创 2020-02-02 14:08:57 · 129 阅读 · 0 评论 -
九、异常处理
一、请问什么是程序的健壮性?答:是指程序在多数情况下能够正常运行,返回预期的正确结果;如果偶尔遇到异常情况,程序也能采取周到的解决措施。二、请问Java异常处理机制有什么?答:①try-catch:捕获异常;②finally语句:任何情况下必须执行的代码;③throws子句:声明一个方法可能会出现的异常;④throw语句:抛出异常。三、请问异常处理语句的语法规则有哪些?...原创 2020-02-01 21:45:13 · 160 阅读 · 0 评论 -
八、接口
一、请问接口的含义是什么?答:①实实在在的接口类型;②系统对外提供的服务。二、请问接口的特征是什么?答:①接口中的成员变量默认都是public,static,final类型的,必须被显式初始化。②接口中的方法默认都是public,abstract的。③在jdk8以前的版本,接口只能包含抽象方法。从jdk8开始,允许在接口中定义默认方法和静态方法。接口的实现类既可以直接访问默认方...原创 2020-02-01 16:15:27 · 121 阅读 · 0 评论 -
七、访问控制级别、abstract、final、static、静态变量和实例变量
一、请问java的修饰符有哪些?答:抽象的(abstract),静态的(static),公共的(public),受保护的(protected),私有的(private),同步的(synchronized),本地的(native),暂时的(transient),易失的(volatile),不可改变的(final).二、请问访问控制修饰符有哪些?答:①公开级别:public,对外公开。...原创 2020-01-29 20:28:15 · 212 阅读 · 0 评论 -
六、方法重载、方法覆盖、super、向上向下转型、动态和静态绑定
一、请问什么是方法重载?答:重载方法必须满足的条件是:在同一个类中,方法名相同,参数签名(方法的参数类型、个数、顺序)不同,方法的返回类型可以不相同,方法的修饰符可以不相同。二、请问什么是方法覆盖?答:方法覆盖是子类和父类的方法同名同参同返回值。三、请问方法重载和方法覆盖的异同是什么?答:相同点:都要求方法名相同,都可以用于抽象方法和非抽象方法之间。不同点:①方法覆盖要求同...原创 2020-01-29 19:10:59 · 292 阅读 · 0 评论 -
五、流程控制、判断闰年、switch表达式的类型
一、请问流程控制都有哪些?答:选择语句:if-else语句和switch语句。循环语句:while语句、do-while语句、for语句和foreach语句。流程跳转语句:break,continue,return.二、请写一个方法用来判断某一年是否为闰年?答:思路:只要满足以下两个条件之一,就是闰年:①能被4整除,但不能被100整数;②能被400整除。publi...原创 2020-01-29 16:05:50 · 323 阅读 · 0 评论 -
四、操作符、数据转换、自动转换、强制转换
一、请问整型操作符的操作元数据是什么并操作符有哪些?答:元数据:byte,short,char,int和long。①一元操作符:-,~,++,--。++,--会改变所作用的变量的值。-和~操作符并不改变变量本身的值。②二元操作符:并不改变操作元的值,而是返回可以赋给其他变量的值。数学运算操作符:+,-,*,/,%.位运算操作符:&,|,^,<<,>&g...原创 2020-01-29 15:22:04 · 146 阅读 · 0 评论 -
三、数据类型、字符编码、基本类型和引用类型、变量的作用域、静态变量和实例变量
一、请问Java中的数据类型有哪些?答:基本类型:整数类型(byte、int、short、long),浮点型(float、double),字符型(char)布尔型(boolean)。引用类型:类、接口、数组。二、请问为什么整数变量通常定义为int?答:比如月份完全可以定义为byte,java虚拟机只需为其分配1个字节的内存。在内存资源充足的条件下,对于整数变量,通常都把它定义为in...原创 2020-01-29 14:38:18 · 201 阅读 · 0 评论 -
二、包、java基本包、关键字、标识符、保留字
一、请问在java中包的作用是什么?答:①能够区分名字相同的类。②有助于实施访问权限控制。③有助于划分和组织java应用中的各个类。二、请问JDK提供的java基本包主要有哪些?答:①java.lang包:包含线程类(Thread)、异常类(Exception)、系统类(System)、整数类(Integer)和字符串类(String)等。这个包是java虚拟机自动引入的,也就...原创 2020-01-29 13:37:59 · 413 阅读 · 0 评论 -
一、java面向对象编程-面向对象开发方法概述
一、请简述软件开发的生命周期?答:软件分析-设计-编码-测试-部署-维护。软件分析:分析问题领域,了解用户需求;软件设计:确定软件的总体架构,把整个软件系统划分为大大小小的多个子系统,设计每个子系统的具体结构;软件编码:用选定的编程语言来编写程序代码;软件测试:是否实现特定的功能,以及测试软件的运行性能;软件部署:为用户安装软件系统,帮助用户正确的使用软件;软件维护:当...原创 2020-01-28 16:49:02 · 546 阅读 · 0 评论