哪有java代码编程的练习题带答案的那种?

哪有java代码编程的练习题带答案的那种?,第1张

基于UDP通信,可用类创建一个对象表示一个发送数据包,这个类是() A.?DataSocket B.?DatagramSocket C.?DataPacket D.?DatagramPacket D

基于UDP通信,在创建了发送数据包的对象后,如果想获得数据包的目标端口号,可调用方法() A.?getTargetPort() B.?getPort() C.?getTargetName() D.?getName() B

基于UDP通信,在创建了发送数据包的对象后,如果想获得数据包的目标地址,可调用方法() A.?getIP() B.?getPort() C.?getAddress() D.?getName() C

如果想发送数据包,还必须创建一个有多个参数的DatagramSocket的对象负责发送数据包,这个参数的个数() A.?0 B.?1 C.?2 D.?3 A

基于UDP通信,可用类的对象表示一个接收数据包,这个类是() A.?DataSocket B.?DatagramSocket C.?DataPacket D.?DatagramPacket D

基于UDP通信,接收数据包的端口号应() A.?0~65535 B.?0~1023 C.?1024~65535 D.?与发送数据包的端口号相同 D

基于UDP通信,一个接收数据包应调用方法接收数据包的是() A.?connect() B.?receive() C.?accept() D.?get() B

如果要接收一个数据包,必须先准备一个数据包用于接收,这个准备接收数据的数据包应是一个类的对象,这个类是() A.?DatagramSocket B.?DatagramPacket C.?DataSocket D.?DataPacket B

一个Applet程序,如果要从网络上加载一个图像,应使用方法() A.?getGraphics() B.?getSource() C.?getImage() D.?play() C

"要显示一幅图像,()" A.?直接将介质上的图像显示在屏幕上 B.?先读入内存,在显示在屏幕上 C.?将图像读入内存即可 D.?给出图像文件的文件名即可 B

在Applet程序中,如果想获得当前Applet程序的地址,应调用方法() A.?getAddress() B.?getIP() C.?getCodeBase() D.?getDocument() C

图像被加载,输出图像使用的方法是() A.?drawImage() B.?displayImage() C.?printImage() D.?pasteImage() A

屏幕上显示的图像,() A.?必须和实际图像大小一致 B.?在x方向可发生变化 C.?在y方向可发生变化 D.?可以和实际的图像大小不一致 D

"调用方法drawImage(Image img,int x,int y,int width,int height),显示的图像按比例自动调整,此比例为()" A.?width/height B.?width/img.getWidth() C.?height/img.getHeight() D.?x方向width/img.getWidth(),y方向height/img.getHeight() D

在一个图形方式的Application程序中,() A.?可以直接在窗口中显示一幅图像 B.?可以在窗口中添加一个Canvas组件,在这个组件上显示一幅图像 C.?另外建立一个可以显示图像的窗口 D.?Application程序不能显示图像 B

在图形方式的Application中,要获取一幅图像,必须先得到一个类的对象,这个类是() A.?Image B.?ToolKit C.?Frame D.?Cavas B

在图形方式的Application中,要设置窗口的图标,应调用方法() A.?drawImage() B.?drawIcon() C.?drawIconImage() D.?setIconImage() D

JDBC() A.?能与数据库建立连接 B.?能向数据库发送SQL语句 C.?能返回对数据库的处理结果 "D.?能完成上述A,B,C" D

JDBC和数据连接的一种方式是先建立一个桥接器,这个桥是() A.?JDBC B.?ODBC C.?JDBC-ODBC D.?SQL C

要与一个数据库进行连接,首先配置一个数据源是() A.?ODBC B.?JDB C.?ODBC-JDBC D.?Excel A

建立一个数据库桥接器,应使用Class类中的方法是() A.?forName() B.?getClasses() C.?getInterface() D.?getMethods() A

建立桥接器时,可能会发生异常的是() A.?FileNotFoundException B.?ClassNotFoundException C.?ClassCastException D.?RuntimeException B

JDBC建立数据库连接时,应使用类DriverManager中的静态方法创建一个Conection对象,这个方法是() A.?getDriver() B.?getLogStream() C.?registerDriver() D.?getConnection() D

JDBC和数据库连接时,可能会产生异常的是() A.?IOException B.?NoSuchFieldException C.?SecurityException D.?SQLException D

JDBC中向数据库发送SQL语句,首先应创建一个类的SQL语句对象,这个类是() A.?Statement B.?Driver C.?PreparedStatement D.?Connection A

JDBC中创建SQL语句对象可能产生例外的是() A.?IOException B.?DataTruncation C.?SQLException D.?SQLWaring C

JDBC中执行一条SQL语句应调用方法() A.?sendQuery() B.?sendSQL() C.?executeQuery() D.?executeSQL() C

JDBC中,一条语句的执行结果放在一个类的对象中,这个类是() A.?ResultSetMetaData B.?ResultSet C.?DatabaseMetaData D.?Driver B

要在Applet程序中播放声音文件,获得一个AudioClip的对象,应调用的方法是() A.?getAppletInfo() B.?getAudioClip() C.?getDocumentBase() D.?getImage() B

要播放一个音频对象表示的音频文件,应调用的方法是() A.?stop() B.?start() C.?init() D.?play() D

用Vector创建了一个对象后,该向量() A.?大小不可改变 B.?根据使用要求,大小可以改变 C.?只能表示一个平面向量 D.?只能表示一个三维向量 B

向量中的元素不能是() A.?Object类的对象 B.?Integer类的对象 C.?String类的对象 D.?基本数据类型的数据 D

往一个向量类对象中加一个元素的方法public void add(Object obj),其中参数obj表示() A.?所增加的元素只能是一个Object类的对象 B. 一个Class类的对象 C.?一个Process类的对象 D.?任何类的对象 D

向量类Vector中的方法的参数和方法的类型大多数为Object类型,是因为() A.?Object类是所有类的基类 B.?Object类包含所有类的属性和方法 C.?向量类中的元素只能为Object类的对象 D.?Object类是所有类的子类,能表示任何父类对象 A

使用JDK开发Java程序时,编译一个源文件使用的命令是() A.?javac B.?java C.?appletviewer D.?javap A

使用JDK开发Java程序时,如果要解释一个Application程序,须使用命令() A.?javac B.?java C.?appletviewer D.?javap B

使用JDK开发Java Applet程序时,如果想看一下该程序的运行结果,使用命令() A.?javac B.?java C.?appletviewer D.?javap C

InputStream类或Reader类的子类是所有的() A.?输入流 B.?输出流 C.?输入/输出流 D.?Java通信类 A

OutputStream类或Writer类的子类是所有的() A.?输入流 B.?输出流 C.?输入/输出流 D.?Java通信类 B

当构造一个输入流的对象时,可能产生异常的是() A.?InterruptedException B.?NoSuchFieldException C.?RuntimeException D.?FileNotFoundException D

构造一个输入流的对象时,可用一个类的对象作为构造方法的参数,这个类是() A.?FileReader B.?FileWriter C.?Inputstream D.?File D

一个输入流的对象用int read()方法从流中读数据时,该方法的返回值() A.?一个字符 B.?在0~255之间 C.?一行字符 D.?在0~65535之间 B

从一个FileInputStream流中用read方法读数据时,表示流结束,则该方法返回() A.?-1 B.?0 C.?255 D.?65535 A

当对一个流 *** 作完毕时,可以保证 *** 作系统将缓冲区中的数据写入到目的地,应调用方法() A.?available() B.?pack() C.?skip() D.?close() D

类RandomAccessFile不同于其它的I/O流,该流的对象() A.?只读 B.?只写 C.?读和写 D.?不能单独读写流,只有和其它流连接才能读写 C

"构造方法RandomAccessFile(File file,String mode)中的参数mode表示()" A.?读流的方法 B.?写流的方法 C.?读/写流的方法 D.?流的打开方式 D

将一个RandomAccessFile对象中的文件指针移动到文件中的一个确定位置,应调用方法() A.?skipBytes() B.?seek() C.?moveBytes() D.?seekBytes() B

PipedInputStream()构造的一个管道输入流,与另一个管道输入流连接,应调用方法() A.?connect() B.?receive() C.?read() D.?link() A

构造方法PipedOutputStream(PipedInputStream in)生成的输出流,() A.?须调用方法与另一个管道输入流连接 B.?已经与一个管道输入流in连接 C.?应连接到一个文件输入流 D.?应连接到一个文件输出流 B

构造方法PipedInputStream()或PipedOutputStream()创建对象时,() A.?可能产生IOException异常 B.?可能产生FileNotFoundException异常 C.?可能产生NotActiveException异常 D.?不可能产生异常 D

DataInputStream与DataOutputStream的特点() A.?读写数据时与具体的机器无关 B.?读写数据时与具体的机器有关 C.?读数据时与机器有关,而写数据时与机器无关 D.?读数据时与机器无关,而写数据时与机器有关 A

对象流可以将一个数据从流中读出,也可以写入流中,这个数据是() A.?整型数 B.?字符 C.?浮点数 D.?对象 D

如果一个用户自定义的类以对象为单位进行读写时,该类定义时应实现一个接口() A.?DataInput B.?DataOutput C.?ObjectOutput D.?Serializable D

用PushbackInputStream类定义的流,() A.?可将读出的所有字节退回到流中 B.?可将指定字节数退回到流中 C.?可将刚读出的字节退回到流中 D.?每读一个字节就自动退回一个字节到流中 D? ?

JDBC 事务隔离级别

作用:

1:保证数据的正确性,保证如下特征: a:原子性:如果因故障中断,则所有结果都撤消 b:一致性:事务处理的结果保留不变的特性 c:孤立性:中间状态对其他事务是不可见的 d:持久性:完成事务的结果是持久的

事务终止的两种方式:1提交,一个事务使其结果永久不变,2回滚,撤消所有更改回到原来状态。

2:解决数据同时读取的问题: 3个问题:

a:脏读取:一个事务读取了另外一个并行事务未提交的数据

b:不可重复读取:一个事务再次读取之前的 数据时得到的数据不一致,被另外一个事务修改 c:虚读:一个事务重新执行一个查询,返回的记录包含了其他事务提交的新记录

解决办法:

设定事务的隔离级别:con.setTransactionIsolation(Connection.isolationLevel)

四种隔离级别:

con.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED)//最底级别:只保证不会读到非法数据,上述3个问题有可能发生

con.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED)//默认级别:可以防止脏读

con.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ)//可以防止脏读和不可重复读取

con.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE)//最高级别:防止上述3种情况,事务串行执行

你可以做一个下拉框,选项有教师和学生,不过这个的话,一般是通过权限来控制的,这样教师和学生登录之后,看到的菜单就不一样了。

JDBC连接数据库

•创建一个以JDBC连接数据库的程序,包含7个步骤:

1、加载JDBC驱动程序:

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),

这通过java.lang.Class类的静态方法forName(String className)实现。

例如:

try{

//加载MySql的驱动类

Class.forName("com.mysql.jdbc.Driver")

}catch(ClassNotFoundException e){

System.out.println("找不到驱动程序类 ,加载驱动失败!")

e.printStackTrace()

}

成功加载后,会将Driver类的实例注册到DriverManager类中。

2、提供JDBC连接的URL

•连接URL定义了连接数据库时的协议、子协议、数据源标识。

•书写形式:协议:子协议:数据源标识

协议:在JDBC中总是以jdbc开始

子协议:是桥连接的驱动程序或是数据库管理系统名称。

数据源标识:标记找到数据库来源的地址与连接端口。

例如:(MySql的连接URL)

jdbc:mysql:

//localhost:3306/test?useUnicode=true&characterEncoding=gbk

useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为

gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。

3、创建数据库的连接

•要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,

该对象就代表一个数据库的连接。

•使用DriverManager的getConnectin(String url , String username ,

String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和

密码来获得。

例如:

//连接MySql数据库,用户名和密码都是root

String url = "jdbc:mysql://localhost:3306/test"

String username = "root"

String password = "root"

try{

Connection con =

DriverManager.getConnection(url , username , password )

}catch(SQLException se){

System.out.println("数据库连接失败!")

se.printStackTrace()

}

4、创建一个Statement

•要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3

种类型:

1、执行静态SQL语句。通常通过Statement实例实现。

2、执行动态SQL语句。通常通过PreparedStatement实例实现。

3、执行数据库存储过程。通常通过CallableStatement实例实现。

具体的实现方式:

Statement stmt = con.createStatement()

PreparedStatement pstmt = con.prepareStatement(sql)

CallableStatement cstmt =

con.prepareCall("{CALL demoSp(? , ?)}")

5、执行SQL语句

Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate

和execute

1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句

,返回一个结果集(ResultSet)对象。

2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或

DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等

3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的

语句。

具体实现的代码:

ResultSet rs = stmt.executeQuery("SELECT * FROM ...") 法长瘁短诓的搭痊但花

int rows = stmt.executeUpdate("INSERT INTO ...")

boolean flag = stmt.execute(String sql)

6、处理结果

两种情况:

1、执行更新返回的是本次 *** 作影响到的记录数。

2、执行查询返回的结果是一个ResultSet对象。

• ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些

行中数据的访问。

• 使用结果集(ResultSet)对象的访问方法获取数据:

while(rs.next()){

String name = rs.getString("name")

String pass = rs.getString(1) // 此方法比较高效

}

(列是从左到右编号的,并且从列1开始)

7、关闭JDBC对象

*** 作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声

明顺序相反:

1、关闭记录集

2、关闭声明

3、关闭连接对象

if(rs != null){ // 关闭记录集

try{

rs.close()

}catch(SQLException e){

e.printStackTrace()

}

}

if(stmt != null){ // 关闭声明

try{

stmt.close()

}catch(SQLException e){

e.printStackTrace()

}

}

if(conn != null){ // 关闭连接对象

try{

conn.close()

}catch(SQLException e){

e.printStackTrace()

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6757311.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存