形考作业一
1、请说说你对JVM的理解。
2、char型变量中能不能存贮一个中文汉字?请说出理由。
JAVA语言程序设计形考(一)答案
(一)、
jvm:java虚拟机,java的核心与基础,用来运行java的程序
1、java程序的运行过程
1)java源文件被编译器编译成.class文件
2).class文件被类加载器加载至内存//——–类加载器:将.class文件加载至内存并且生成相应的class对象
3)执行
2、jvm程序执行的顺序
加载.class文件>>>>管理分配内存>>>>执行垃圾收集
java语言的特点就是平台的无关性:
java虚拟机在执行字节码时,把字节码解释成具体平台的机器指令,这也就是java能够“一次编译,到处运行”的原因
(二)、
char类型可以存储一个中文汉字,因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个中文是没问题的。
补充:使用Unicode意味着字符在JVM内部和外部有不同的表现形式,在JVM内部都是Unicode,当这个字符被从JVM内部转移到外部时(例如存入文件系统中),需要进行编码转换。所以Java中有字节流和字符流,以及在字符流和字节流之间进行转换的转换流,如InputStreamReader和OutputStreamReader,这两个类是字节流和字符流之间的适配器类,承担了编码转换的任务;对于C程序员来说,要完成这样的编码转换恐怕要依赖于union(联合体/共用体)共享内存的特征来实现了。
形考作业二
1.阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。
代码一:
class A {
private int secret = 5;
}
public class Test1 {
public static void main(String[] args) {
A a = new A();
System.out.println(a.secret++);
}
}
代码二:
public class Test2 {
public static void main(String[] args) {
try {
int x = 2 / 0;
System.out.println(x);
} catch (Exception e) {
System.out.println(“进入catch代码块”);
} finally {
System.out.println(“进入finally代码块”);
}
}
}
1.答:不能编译通过。因为secret 在 A 中是 private 访问控制,所以在Test中不能访问。
- 答:
能编译通过,输出结果是.
进入catch代码块
进入finally代码块
形考作业二
1.阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。
代码一:
class A {
private int secret = 5;
}
public class Test1 {
public static void main(String[] args) {
A a = new A();
System.out.println(a.secret++);
}
}
代码二:
public class Test2 {
public static void main(String[] args) {
try {
int x = 2 / 0;
System.out.println(x);
} catch (Exception e) {
System.out.println(“进入catch代码块”);
} finally {
System.out.println(“进入finally代码块”);
}
}
}
答案:不能编译通过。因为secret 在 A 中是 private 访问控制,所以在Test中不能访问。
答案:能编译通过,输出结果是.进入catch代码块,进入finally代码块
形考作业四
1、简述你对IP地址的认识。
2、简述JDBC编程的主要步骤
一、简述你对IP地址的认识。
IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP地址分为A、B、C、D四类。A类地址第一段为网络号码,剩下的三段为本地计算机的号码。B类地址前两段为网络号码。C类在IP地址前三段为网络号码,剩下的一段为本地计算机的号码。D类在历史上被叫做多播地址,即组播地址。
二、JDBC操作数据库的基本步骤:
1、加载JDBC驱动程序。 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的静态方法forName(String className)实现。成功加载后,会将Driver类的实例注册到DriverManager类中。
2、提供JDBC连接的URL。 连接URL定义了连接数据库时的协议、子协议、数据源标识。 书写形式:协议:子协议:数据源标识。
3、创建数据库的连接。 要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象, 该对象就代表一个数据库的连接。 使用DriverManager的getConnectin(String url , String username , String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和 密码来获得。
4、创建一个Statement,要执行SQL语句,必须获得java.sql.Statement实例。 Statement实例分为以下3 种类型: (1)执行静态SQL语句。通常通过Statement实例实现。 (2)执行动态SQL语句。通常通过PreparedStatement实例实现。 (3)执行数据库存储过程。通常通过CallableStatement实例实现。 5、执行SQL语句。 Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate 和execute
6、处理两种情况的结果。 (1)执行更新返回的是本次操作影响到的记录数。 (2)执行查询返回的结果是一个ResultSet对象。 ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 行中数据的访问。 使用结果集(ResultSet)对象的访问方法获取数据。
7、关闭JDBC对象(关闭结果集–>;关闭数据库操作对象–>;关闭连接)。 操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声 明顺序相反: (1)关闭记录集。 (2)关闭声明。 (3)关闭连接对象。