Java编程:线程与输入/输出重点题解析

需积分: 7 0 下载量 175 浏览量 更新于2024-09-17 收藏 59KB DOC 举报
"Java编程相关的复习题目" 这些题目涵盖了Java编程语言的基础知识,包括线程优先级、循环控制、同步机制、输入/输出操作、访问权限、方法定义、多线程实现等多个方面。 1. 线程优先级:Java中,线程的优先级由`java.lang.Thread`类的常量表示,`NORM_PRIORITY`为普通优先级,其值为5,最高优先级是`MAX_PRIORITY`,其值为10。选项中没有提供具体数值,但根据常识,11不是Java线程优先级的合法值,因此正确答案可能是D11,但这取决于实际的题目设置。 2. for循环:`for(int i=0; true; i++)`会形成一个无限循环,因为条件部分始终为真,所以选项B正确,循环将无限次执行。 3. 对象加锁:在Java中,`synchronized`关键字用于对对象进行加锁,确保对对象的访问是互斥的,所以C是正确答案。 4. 输入/输出操作:`java.io`包提供了输入/输出的相关类和接口,如`FileInputStream`、`FileOutputStream`等,所以B是正确的。 5. 类的限制:在一个Java源文件中,public类(即类名与文件名相同的类)最多只能有一个,其他类的个数不限。因此,A选项正确。 6. 变量和逻辑判断:表达式`m=--x<y;`先执行`--x`,x变为4,然后比较4是否小于y(假设y为5),结果为false。因此,m的值为false,x的值为4,y的值为5,所以D是正确答案。 7. 获取主机名:`InetAddress`类的`getHostName()`方法用于获取IP地址对应的主机名,所以D选项正确。 8. 访问权限:缺省的访问权限(不带任何修饰符)仅限于同一包内的类访问,因此D选项正确。 9. 方法定义:无形式参数无返回值的方法method,其调用形式为`First.method()`,这表明方法是静态的,因为静态方法可以直接通过类名调用,所以A选项正确。 10. 对象加锁:再次出现的这个问题,`synchronized`关键字用于对象加锁,所以C选项正确。 11. 多线程实现:在Java中,通过`Thread`子类实现多线程,需要首先声明`Thread`的子类,然后在子类中重写`run()`方法,创建子类实例,并调用`start()`方法启动线程。因此,正确的顺序是D。 这些题目旨在测试对Java基础语法、并发编程和IO操作的理解。对于准备Java考试或面试的人来说,理解和解答这些问题至关重要。