自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java对文件的读写分别提供了哪些支持?

1.File 文件(或目录)路径名字的抽象表示2.FileDescriptor 代表一个打开文件的文件描述。3.FileFilter & FilenameFilter 接口,列出满足条件的文件,用于:File.list(FilenameFilter fnf)File.listFiles(FileFilter ff)FileDialog.setFilenameFilter(FilenameFilter fnf)FileDialog是java.awt包中的类。4.FileInputStr

2020-12-15 09:22:37 149

原创 Java的File类表示什么?有什么作用?

File类不仅指系统中的文件,也指目录,因为目录也是特殊的文件。作用:表示一个文件对象,文件(或目录)路径名字的抽象表示。

2020-12-15 09:15:18 520

原创 什么是对象的序列化和反序列化?Java对此提供了哪些支持?

序列化,将实现了Seriallizable接口的对象转换成一个字节序列,并能够在以后将这个字节序列完全恢复为原来的对象,后者又称反序列化。串行化的目的:便于介质存储和网络传输。支持:使用ObjectInputStream类和ObjectOutputStream类...

2020-12-15 09:08:42 188

原创 Java中的过滤流(流的装配)有什么作用?请举例说明常用的过滤流。

FilterInputStream 和 FilterOutputStream分别重写了父类InputStream和OutputStream的所有方法,对其他输入输出流进行特殊处理。要使用过滤流,首先必须把它连接到某个输入输出节点流上,通常在构造方法的的参数中指定所要连接的节点流:FilterInputStream(InputStream in);FilterOutputStream(Outputstream out);...

2020-12-15 08:51:03 287

原创 字节流与字符流的转化是怎样的?Java对此提供了哪些支持?

输入字节流转为字符流需要用到inputstreamReader的构造方法:InputStreamReader(InputStream in)如:InputStreamReader ins = new InputStreamReader(System.in);InputStreamReader ins = new InputStreamReader(newFileInputStream(“test.txt”));输出字符流转为字节流用到OutputStreamWriter或PrintWriter的

2020-12-15 08:35:50 301 1

原创 字节流InputStream和OutputStream的子类分别有哪些?请举例说明其使用场景。与其对应的字符流分别有哪些?

1.InputStream的子类FileInputStream 文件流PipedInputStream 管道输入流,读取管道内容。多和PipedOutputStream一起用于多线程通信ObjectInputStream用来恢复被序列化的对象ByteArrayInputStream包含一个内存缓冲区,字节从中取出。SequenceInputStream 是多种输入流的逻辑串联,从第一个输入流读取,直到最后一个输入流FilterInputStream 过滤流,在读写数据的同时还可以对数据进行特殊处

2020-12-15 08:26:28 508

原创 Java中流的分类有哪些

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

2020-12-14 20:03:14 871

原创 15.2 仿照例15.5,编写完整的基于数据报的多客户/服务器通信程序

//QuoteServerThread.javaimport java.io.*;import java.net.*;import java.util.*;public class QuoteServerThread extends Thread{ protected DatagramSocket socket=null; protected BufferedReader in=null; protected boolean moreQuotes=true; public Quo

2020-11-14 16:51:07 90

原创 15.1 仿照例15.4,编写完整的基于Socket的多客户/服务器通信程序

//ServerThread.javaimport java.io.*;import java.net.*;public class ServerThread extends Thread{ Socket socket=null; int clientnum; //保存本进程的客户序号 public ServerThread(Socket socket,int num) { this.socket=socket; clientnum=num+1; } public v

2020-11-14 16:01:48 107

原创 9.2.编写Java程序模拟烧水泡茶最优工序

package threaddddd;class xiShuiHu extends Thread{ private Integer i; xiShuiHu(Integer ii){ this.i=ii; } public synchronized void run() { int ww=0; while(++ww<=1) { ++i; int w=0; while(++w<=1000) ; System.out.println("

2020-11-08 18:59:17 247 1

原创 9.1.volatile关键字有什么作用?

线程把主存变量保存在保存在寄存器(工作内存)中操作,线程结束再与主存变量进行同步,然而,当一个线程改变了主存中变量的值,另外一个线程还在继续使用它在寄存器中变量值的副本,造成数据不一致。换句话说,这里的数据一致就是一个线程所使用的变量值要是上一个线程结束后所得到的的变量值解决方法 : 将变量声明为volatile,每次使用它都需要到主存中读取volatile:禁用CPU缓存,使用该变量时不再用寄存器,而是直接从内存中进行读取,使得变量具有唯一性,而不是有副本...

2020-11-08 11:22:51 53

原创 个人银行账户管理程序c++源码改写Java心得

最大的体会是c++和Java的相似程度太大了,否则修改难度将会大大提高,基本上只需要修改一下细枝末节。private,public,protected三个,在c++里面是区域型的,即自写了“ private: ”的地方,下方区域的成员为私有;而在Java中,需要在每个成员前面加“private”;类的函数实现位置C++的类的类的函数既可以在类里面(即class xx{ 。。。}的{}里面)写函数体,又可以在类外写函数体,即 " 返回值类型 xx:: 函数名(参数){函数体} "的形式;j

2020-11-07 18:13:49 200

原创 8.1.借助JDK, 选取几个String与StringBuffer 、StringBuilder的常用API,并编写实例测试API的功能。

1.String的charAtpublic class zhu { public static void main(String[] args){ String w=new String("hello,nice to meet you"); System.out.println(w); int i; for(i=0;i<w.length();++i) System.out.print(w.charAt(i)+"#");

2020-11-03 22:38:28 180 2

原创 8.4. 什么是字符串的编码与解码

最熟悉的要说ASCII码了。储存的时候把字符转化为数字储存起来,当显示的shi

2020-11-01 22:03:53 90

原创 8.3. 为什么不建议在for循环中使用“+”进行字符串拼接?

String s = “a” + “b” ;会自动转化为String s= new StringBuffer().append(“a” ).append(“b” ).toString();当执行以下语句,每一次循环都要新建一个StringBuffer对象,并执行toString()int m = 1;String s = “a”;for(int i=0; i<10000;i++){s = s + m ; //效率低下,需新建一万个对象}如果转化为以下语句,则只需新建一次String

2020-11-01 17:54:27 92

原创 8.2. 请简述String,StringBuffer,StringBuilder三者之间的共同点与区别,应该分别在何种场景下使用?

相同点:1、内部实现基于字符数组,封装了对字符串处理的各种操作2、可自动检测数组越界等运行时异常不同点:1、String内部实现基于常量字符数组,内容不可变;StringBuffer、StringBuilder基于普通字符数组,数组大小可根据字符串的实际长度自动扩容,内容可变2、性能方面,对于字符串的处理,相对来说StringBuilder >StringBuffer>String3、StringBuffer线程安全;StringBuilder非线程安全使用场景:String

2020-11-01 17:46:10 239

原创 仿照例7.9,自定义一个异常类,并在某场景下抛出该异常对象。

public class yicang extends Exception{ yicang(String ms){ super(ms); } static void Throw() throws yicang { int a=0,b=3; if(a!=0) { System.out.println(b/a); } else{ throw new yicang("除数不能为0"); } } public static void main(String []arg

2020-10-27 19:33:46 93

原创 简述异常处理的两种方式

声明抛出处理:使用throws关键字抛出异常。分为隐式声明抛出和显式声明抛出。程序捕获处理: try…catch…。有嵌套和非嵌套。

2020-10-27 18:59:46 1247

原创 .简述运算符instanceof的使用场景。

boolean result = a instanceof B如果a是B的实例化对象或者B的子类的实例对象,返回ture,否则返回false。当需要判断指定 对象(实际引用的对象实例) 是否是 指定类或者指定类的子类 的实例时,使用运算符instanceof...

2020-10-27 18:54:45 89

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

运行时的多态:一个接口,多个方法1.父类的引用指向子类对象,掉用的方法是子类的方法//父类class A { void fun() { System.out.println(“I am A”); } } //A的子类Bclass B extends A { void fun() { System.out.println(“I am B”); } } //A

2020-10-27 18:31:53 241

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

区别:继承是子类对父类的发展,组合是一个类把另一个类当作组件来用。使用场景:组合:需要保证类的安全性,不破坏封装,一个类只作为另一个类的组件。继承:两个类具有发展关系,一个类是另一个类的具象化,是另一个类的特例。...

2020-10-27 13:03:58 317

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

子类new一个对象时,先执行父类的构造方法,再定义属性,再执行父类构造方法里面的语句,再执行子类的构造方法里面的super语句后面的语句

2020-10-27 12:48:01 121

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

运用类的组合,把一个类的引用作为另一个类的属性class A{ private int x; public A(){x=5;} public void show(){ System.out.println(x); }}class B{ private A a; public void show(){ a=new A(); A.show();}} }...

2020-10-27 12:42:04 165

原创 5.5 什么是覆盖?有什么作用?请举例说明。

覆盖:子类对父类的同名方法(方法名称相同,参数相同,返回类型相同)重新进行定义作用:对从父类继承过来的方法进行重写//父类class Parent { public int getScore() { return 3; } public String getCountryName() { return “China”; }}//父类class Son extends Parent { public int getScore(){ return 4;

2020-10-18 16:25:15 380

原创 5.4 什么是重载?有什么作用?请举例说明

重载:方法名称(函数名)相同,参数类型 或 参数个数 不同。作用:可以使用相同名字(一个名字)的方法实现不同的功能。例1:class Parent{ public int getScore(){ return 3; } public int getScore(int i){ return i; } }...

2020-10-18 16:06:04 500

原创 5.3 什么是组合?有什么作用?请举例说明。

组合:是把一个旧类当成另一个类的组合成分(把旧类对象作为新类的成员变量)。作用:实现类的复用//端点public class Point { private int x,y; public Point(int x,int y) { this.x = x; this.y = y; } public int GetX() { return x; } public int GetY() { return y; } }//线段c.

2020-10-18 15:38:12 534

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

子类继承了父类的所有属性和方法, 但只有public、protected的属性和方法在子类是可见的。子类在继承父类的时候,首先应该满足父类可被访问,例如当子类和父类不在同一个包当中时,父类修饰符必为public;在父类能被访问的前提下,凡是修饰符为public或是protected的父类属性成员或是方法能被子类所访问;private的属性成员或是方法则不能被访问。...

2020-10-18 14:57:38 233

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

public(接口访问权限)protected(包访问权限、继承访问权限)“默认”(包访问权限)private(无法直接访问)

2020-10-17 19:29:08 213

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

基本数据类型的数组,数组元素是基本数据类型引用类型的数组,数组元素是对象的引用

2020-10-13 18:48:34 159

原创 float[10] arr语句正确吗?为什么

不正确因为声明浮点型数组时,方括号里面不能加参数

2020-10-13 18:39:07 313

原创 类的static字段与非static字段的区别shisme?什么情况需要使用static?

static修饰符修饰的域变量不属于任何一个类的具体对象,专属于类非static字段可以属于对象当需要一个专属于类的变量时用static

2020-10-13 18:36:34 79

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

1.final修饰类属性,则该属性为常量;2.修饰方法,则该方法为最终方法,在子类中不能被覆盖。利用final修饰符可以防止数据被篡改

2020-10-13 18:30:28 337

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

1.静态变量2.变量

2020-10-13 18:25:11 65

原创 对象作为参数传输的特点

对象作为参数传递时,实际上传递是对引用的复制

2020-10-13 18:22:25 79

原创 对象与对象引用的区别

对象:是一个实例对象引用:是对象的地址

2020-10-13 18:19:55 74

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

break lab; (跳出多重循环的外层循环),其中:break是关键字;lab是用户定义的标号。lab: for(int i =0; i<2; i++) { for(int j=0; j<10; j++) { if (j >1) { break lab; } .

2020-09-29 22:32:02 210

原创 逻辑运算符&和&&的区别是什么?逻辑运算符&与位运算符&的区别是什么?请分别举例说明

逻辑运算符 & 运算符左右两边的表达式首先被运算执行,再对两表达式的结果进行与运算逻辑运算符 && 如果从左边的表达式中得到操作数能确定运算结果,则不再对右边的表达式进行运算。逻辑运算符&参与运算的都是布尔值x&y,x,y都为true时,结果为true位运算符&x&y,x,y按位进行与操作...

2020-09-29 22:26:03 671

原创 int与Integer有什么区别,它们之间的相互转化是怎样的

int 属于普通数据类型,Integer是 int 所对应的包装类①int转Integerint a = 5;Integer A = new Integer(a);或Integer A = Integer.valueOf(a);②Integer转intInteger A = new Integer(5);int a = A.intValue();

2020-09-29 22:13:41 152

原创 为什么需要包装类

1.增加面向对象特性,兼容集合的使用。2.为了让基本类型也具有对象的特征,为其添加了属性和方法,丰富了基本类型的操作。

2020-09-29 21:51:44 349

原创 Java基本数据类型转换包含哪两类?请举例说明

1.自动类型转换(1)byte、short、char类型被提升到int类型(2)整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级 。2.强制类型转换 高级数据要转换成低级数据,需用到强制类型转换,如: int i; byte b=(byte)i; /把int型变量i强制转换为byte型/...

2020-09-29 21:32:46 911

空空如也

空空如也

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

TA关注的人

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