自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 第十章(集合类)

1.Collection, list, Set之间的联系和区别?Collection:Java.util下的一个接口,是各种集合结构的父接口,List和Set是继承自它的子接口。List:List接口是有序的,会精确的将元素插入到指定的位置(允许有相同元素)。用户能够使用索引(元素在List中的位置,类似于数组下标)来访问List中的元素。常用的实现类有 ArrayList、LinkedList 和 Vector。Set:是一种不包含重复元素的Collection接口,只关心元素是否属于Set(不允许

2021-11-15 18:58:31 183

原创 第十四章(I/O流)

一,Java中流的分类有哪些?流从流动方向上看:一般分为输入流和输出流输入流:如System.in是一个InputStream类型输入流输出流:如System.out 是一个PrintStream类型输出流从读取类型上分:一般分为字节流和字符流字节流:如System.in是一个InputStream类型字节流字符流:如new InputStreamReader(System.in)是一个字符流对象流从发生的源头:分为节点流和过滤流类节点流:直接操作目标设备对应的流 ,如文件流,标准输入输出

2021-11-15 18:48:25 127

原创 第十五章(网络通信)

一,仿照例15.4,编写基于TCP Socket的多客户/服务器通信程序。客户端:import java.io.*;import java.net.*;public class TalkClient { public static void main(String args[]) { try{ //向本机的4700端口发出客户请求 Socket socket=new Socket("192.168.43.100",808

2021-11-15 13:32:32 237

原创 第九章(线程)

1.FutureTask类有什么作用?它实现了哪些接?Callable接口和Runnable接口有什么不同?作用:1)是runnable的实现2)它的构造参数接受callable3)并且有泛型定义,记录任务的执行结果4)get方法可以获取callable任务的执行结果,如果任务执行完直接返回结果,任务还没执行完,调用线程会阻塞线程直至get返回结果不同:1)callable可以携带返回值,泛型2)callable可以抛出异常3)callable的方法名是call,runn

2021-11-15 13:31:54 218

原创 第八章(字符串)

1、请简述String,StringBuffer,StringBuilder三者之间的共同点与区别,应该分别在何种场景下使用?使用场景:String:对安全要求更高。StringBuffer、StringBuilder:对性能要求更高共同点:内部实现基于字符数组,封装了对字符串处理的各种操作可自动检测数组越界等运行时异常区别:String内部实现基于常量字符数组,内容不可变;StringBuffer、StringBuilder基于普通字符数组,数组大小可根据字符串的实际长度自动扩容,

2021-11-15 13:29:46 75

原创 第七章作业

1、请查阅资料,简述StackOverflowError和OutOfMemoryError两类错误的发生情形和原因。StackOverflowError:抛出这个错误是因为线程请求的栈深度大于虚拟机所允许的深度,因为Java线程操作是基于栈的,当调用方法内部方法也就是进行一次递归的时候,就会把当前方法压入栈直到方法内部的方法执行完全之后,就会返回上一个方法,也就是出栈操作执行上一个方法。OutOfMemoryError:如果虚拟机栈可以动态扩展(当前大部分的Java虚拟机都可动态扩展,只不过Java

2021-11-15 13:25:25 934

原创 Exception又分为checked异常和unchecked异常,请分别举例说明。

派生于Error或者RuntimeException的异常称为unchecked异常 所有其他的异常称为checked异常

2021-11-15 13:21:33 115

原创 Throwable的子类包含哪两类?简述Java Error类与Exception类的区别。

Throwable的子类:Error类和Exception类。区别:Error属于系统级错误称之为“错误”,不可被捕获;Exception属于应用程序级错误称之为“异常”,可以通过捕获避免; Error无需在程序中以throws子句中抛出;而Exception需要抛出; 存在Error错误程序不能运行或是运行中断;存在Exception错误程序可运行并抛出。...

2021-11-15 13:19:41 722

原创 谈谈抽象类与接口的异同以及两者的使用场景。

一、抽象类与接口的异同相同点:① 抽象类和接口都不能被实例化② 抽象类和接口都可以定义抽象方法,子类/实现类必须覆写这些抽象方法不同点:① 抽象类有构造方法,接口没有构造方法② 抽象类可以包含普通方法,接口中只能是public abstract修饰抽象方法(Java8之后可以)③ 抽象类只能单继承,接口可以多继承④ 抽象类可以定义各种类型的成员变量,接口中只能是public static final修饰的静态常量二、使用场景抽象类:想约束子类具有共同的行为,又想拥有缺省的方

2021-11-15 13:16:50 406

原创 举例说明运算符instanceof的使用场景。

instanceof的使用场景:判断对象是否是指定类或者指定类的子类的实例。例: boolean result=a instanceof B如果是指定类的实例则返回true,否则返回false。

2021-11-15 13:09:12 234

原创 如何实现两个对象之间互发消息,请举例说明。

对象和对象引用好比生活中电视机与遥控器的关系,遥控器是采用红外线的方式控制电视,而引用控制对象采用的则是发消息的方式。使用引用的属性或方法其实都是调用对象的属性和方法,而消息概念的引入就是说明这样的一个过程。因此,消息的实质就是引用向对象发出的服务请求,是数据成员和成员方法的调用。...

2021-11-15 12:58:06 107

原创 Java中的运行时多态的含义是什么?有什么作用?请举例说明。

运行时的多态:一个接口,多个方法。1.父类的引用指向子类对象,掉用的方法是子类的方法;2.通过接口指向不同的对象来实现不同的方法。

2021-10-27 20:25:53 72

原创 谈谈组合与继承的区别以及两者的使用场景(即什么时候宜用组合 ?什么时候宜用继承?)。

区别:继承是子类继承父类,父类的所有属性和方法都可以被子类访问和调用。组合是指将已存在的类型作为一个新建类的成员变量类型,两个类之间无上下级关系。使用场景:当你只需要使用另外一个类的方法时使用组合。但是如果你需要使用另外一个类的作用时但你不想被其他的类访问用继承。...

2021-10-27 20:24:45 455

原创 实验:利用IDE的debug功能给例6.4和例6.5的new语句设置断点,使用单步调试(step into/step over)跟踪子类对象实例化(初始化)的执行顺序,并总结该过程。

实验

2021-10-27 20:10:31 75

原创 谈谈组合与继承的区别以及两者的使用场景

继承:子类继承父类,父类的所有属性和方法都可以被子类访问和调用。组合:指将已存在的类型作为一个新建类的成员变量类型,两个类之间无上下级关系。两者的使用场景:当你只需要使用另外一个类的方法时使用组合。但是如果你需要使用另外一个类的作用时但你不想被其他的类访问用继承。...

2021-10-24 22:07:50 347

原创 如何实现两个对象之间互发消息。

两个对象之间互发消息的实现:通过使用一个对象的引用来调用另一个对象的数据成员或成员方法,这样两个对象被联系到了一起,实现了消息的发送。

2021-10-24 22:06:09 203

原创 什么是覆写?有什么作用?

覆写:子类对父类的同名方法(方法名称相同,参数相同,返回类型相同)重新进行定义。作用:对从父类继承过来的方法进行重写。

2021-10-24 22:02:57 1001

原创 什么是重载?有什么作用?

重载:就是函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者重载方法。作用:重载的最直接作用是方便了程序员可以根据不同的参数个数,顺序,类型,自动匹配方法,减少写过个函数名或方法名的重复步骤。...

2021-10-20 23:30:56 3307

原创 什么是组合?有什么作用?

组合:组合即把一个类当成另一个类的组合成分,从而允许新类直接复用该类的public方法。作用:不破坏封装,整体类与局部类之间松耦合,彼此相对独立且具有更好的可扩展性。

2021-10-20 23:28:23 720

原创 子类对于从父类继承的哪些属性与方法是可见的?

子类继承了父类的所有属性和方法, 但只有public、protected的属性和方法在子类是可见的。

2021-10-20 23:18:01 104

原创 Java的访问控制修饰符有哪些?各有什么访问权限?

Java常用的访问控制修饰符有public,protected,private,friendly.private:用 private 修饰的类成员,只能被该类自身的方法访问和修改,而不能被任何其他类(包括该类的子类)访问和引用。 friendly:如果一个类没有访问控制符,说明它具有默认的访问控制特性。这种默认的访问控制权规定,该类只能被同一个包中的类访问和引用,而不能被其他包中的类使用,即使其他包中有该类的子类。这种访问特性又称为包访问性。 protected:用保护访问控制符 protected

2021-10-20 23:16:17 853

原创 Java数组元素类型为基本类型和引用类型时,有什么不同?

对于基本类型数组而言,数组元素的值直接存储在对应的数组元素中——初始化数组时,先为该数组分配内存空间,然后直接将数组元素的值存入对应数组元素中。 引用类型数组的数组元素是引用——每个数组元素里存储的还是引用,它指向另一块内存,这块内存里存储了有效数据。...

2021-10-20 23:12:08 39

原创 Java中float[10] arr; 语句正确么?

float[10] arr——该语句是想建立一个大小为10的数组有以下声明方法:float[] arr; arr=new float[10]; float[] arr=new float[10];但不能写成float[10] arr,系统无法识别该语句给arr数组分配内存空间。

2021-10-20 23:08:39 161

原创 Java中final修饰符都有什么作用?

final的作用:final修饰变量(基本变量、引用变量) final修饰方法 final修饰类注意:final修饰变量表示变量的值不可改变,被final修饰过的变量就是常量。 final修饰方法表示此方法不可以被重写。 final修饰类表示此类不能被继承。...

2021-10-20 23:05:43 263

原创 类的static字段与非static字段的区别是什么?什么场景应该使用static修饰符?

static方法内部的代码,只能访问类中的static属性或方法(因为他们属于对象);但非static方法(对象方法)可以访问static属性或方法。当对象中出现共享数据时,就应该使用static修饰。

2021-10-20 23:01:27 64

原创 对象初始化顺序是怎样的?

初始化父类的静态代码 初始化子类的静态代码 初始化父类的非静态代码 初始化父类构造函数 初始化子类非静态代码 初始化子类构造函数

2021-10-20 22:52:25 51

原创 对象作为参数传递的特点是什么?

基本数据类型作为参数在方法中的传递是值传递public class daytime { private static int a; public static void main(String [] args) { modify(a); System.out.println(a); } public static void modify(int a) { a++; }}输出结果: 0对象作为参数传递时,传

2021-10-20 22:42:38 111

原创 Java语言中可以采用什么语句跳出多重循环?

break break:通常用于switch结构和循环结构,break语句只能退出一层循环。 break lab:跳出多重循环的外层循环(lab)为标号public class daytime{ public static void main(String[] args){ int i,j; lab: for(i=0;i<10;i++){ for(j=0;j<10...

2021-10-19 17:53:51 138

原创 逻辑运算符&和&&的区别是什么?逻辑运算符&与位运算符&的区别是什么?

逻辑运算符&和&&的区别 & 程序执行时会执行完左右两边后再进行判断int a=2,b=3;if(a=1 & b=3)a=1是false,会执行完右边的b=3&& 当程序执行左边为false时,就不会再执行右边int a=2,b=3;if(a=1 && b=3)a=1是false,不会再执行右边的b=3 逻辑运算符&与位运算符&的区别 逻辑运算符&:当&..

2021-10-16 23:56:22 133

原创 int与Integer的区别及相互转换。

区别int是基本数据类型,直接存数值;Integer是一个包装类,用一个引用指向这个对象。相互转换int转换成Integerint a=3;Integer A=new Integer(a);Integer转换成intInteger A=new Integer(5);int a=A.intValue();...

2021-10-16 23:31:21 151

原创 .什么是自动装箱?什么是自动拆箱?

自动装箱:就是自动将基本数据类型转换为包装器类型​ public static void main(String[] args){ int a=3; Integer b=a;//这里就是自动装箱的过程 System.out.println(b); }​程序在执行Integer b=a;的时候调用了Integer.valueOf ( int i ) 方法,`Integer b=a; 这段代码等同于:Integer b=Integer.va

2021-10-16 23:21:03 619

原创 Java基本类型的包装类及其高频区间数据缓存范围分别是什么?

Java的基础数据类型的包装类:Integer,Long,Double,Float,Boolean,Byte,Short,Character。高频区间数据缓存范围Boolean:使用静态final,就会返回静态值 Byte:-128~127 Short:-128~127 Character:0~127 Long:-128~127 Integer:-128~127 其中Double和Float没有缓存其数据缓存特性举例:Integer m = 1...

2021-10-16 22:36:36 184

原创 Java会发生整型溢出的情况及解决方法。

整型溢出:一个数太大超过了原有数据类型所定义的最大范围举例:输出结果:解决办法:选择更大范围的数据类型

2021-10-14 22:09:52 543

原创 Java包含的两大类数据类型。其中基本类型的每种类型的取值范围和默认值。

Java的两大数据类型:基本类型和复合类型。一、基本类型:整数类型——byte、short、int、long; 浮点类型——float、double; 字符类型——char; 布尔类型——boolean。二、复合类型:class(类); interface(接口); 数组。基本类型的取值范围和默认值​​​​...

2021-10-14 21:49:33 154

原创 JDK、JRE、JVM分别是什么的简称,它们之间有何联 系和区别?

JDK(Java Development Kit):是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的Java应用程序。JDK是整个Java开发的核心。JRE(Java Runtime Environment):是指Java的运行环境,是可以在其上运行、测试和传输应用程序的Java平台。JVM(Java Virtual Machine):是java虚拟机,是一种用于计算设备的规范,它是一个虚构出来的计算机,引入JVM后,Java语言在不同平台上运行时不需要重新编译。JVM是Ja..

2021-09-24 23:50:39 1334

原创 Java实现跨平台的原理是什么?

1、什么是Java实现跨平台?Java实现跨平台,是指java语言编写的程序,经过一次编译后,可以在多个系统平台上运行。2、Java跨平台是怎么实现的? Java跨平台是通过java虚拟机在不同的系统上运行的。只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序。 源文件(.java)—>字节码文件(.class)(二进制文件)—> 解释—>Unix,Win,Linux等平台。...

2021-09-24 23:16:41 1366

原创 java语言的特点。与c、c++、python的不同之处。

java、c、c++、python的特点1、java平台无关性与可移植性 java既是编译型语言也是解释型语言,编译成的字节码文件由Java虚拟机在不同操作系统上执行。也就是说java的源代码在任何一个平台上都可以执行。稳定性和安全性 java摒弃了c++中的不安全因素——指针数据类型,避免了恶意使用者利用指针去改变不属于自己程序的内存空间。java的运行环境还提供字节码校验器、运行内存布局和类装载器、文件访问限制等安全措施,保证了源代码文件的安全性。多线程并...

2021-09-24 22:30:01 676

原创 高级语言的编译型和解释型语言的编译执行过程有什么区别?

高级语言都需要先转变为机器语言再在电脑上执行。高级语言分为两种:编译型语言:c/c++; 解释型语言:python、java。区别:编译型语言先将源代码转换成可执行文件后,就可以执行了;编译型语言是一边进行转换一边进行执行。如果将这个过程理解为英语翻译:编译型语言(先翻译再执行);解释型语言(一边解释一边翻译)。 编译型语言为客户提供服务只需要提供可执行文件,不需要提供源代码,保证了源代码的安全性;而解释型语言运行时需要源代...

2021-09-23 18:02:35 946

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除