NIIT认证面试真题及答案
线程总是由操作系统占有和管理,一个新线程的创建和启动只能由操作系统来负责管理。故不能直接调用该线程的run方法,若如此,则不会创建新的.线程和启动该线程,而是和其它类对象一样,那么应该怎样正确启动线程呢?调用线程对象的start方法。当调用Thread对象的start方法时,就会调用一个本地的代码,该代码负责是操作系统初始化一个新的线程,并由这个线程类执行Thread对象的run方法。
创建一个线程有两种方式:其一是继承Thread类并重载run方法;其二是实现Runnable接口。
第一种方法的代码如下:
import .*;
import .*;
class ThreadTest {
/**
* Method main
*
*
* @param args
*
*/
public static void main(String[] args) {
// Create three threads
CustomThread first=new CustomThread("Hopalong ","Cassidy ",200l);
CustomThread second=new CustomThread("Marilyn ","Monroe ",300l);
CustomThread third=new CustomThread("Slim ","Pickens ",500l);
tln("Press Enter when you hava had enought...");
t();
t();
t();
try{
();// Wait until Enter key pressed
tln("Enter pressed...");
}
catch(IOException e){// Handle IO Exception
tln(e );// Output the exception
}
tln("Ending main()...");
return;
}
// Inner class
private static class CustomThread extends Thread{
// Constructor
public CustomThread(String firstName,String secondName,long aWhile){
tName=firstName;
ndName=secondName;
le=aWhile;
aemon(true);
}
// override run method
public void run(){
try{
while(true){
sp; tln(tName);
p(aWhile);
tln(ndName);
}
}
catch(InterruptedException e){
tln(firstName+secondName+e);
}
}
// Constants and Variables
private String firstName;
private String secondName;
private long aWhile;
}
}
第二种创建线程的方法代码如下:
import .*;
import .*;
class ThreadTest1 {
/**
* Method main
* @param args
*/
public static void main(String[] args) {
// Create three threads
Thread first=new Thread(new CustomThread("Hopalong ","Cassidy ",200l));
Thread second=new Thread(new CustomThread("Marilyn ","Monroe ",300l));
Thread third=new Thread(new CustomThread("Slim ","Pickens ",500l));
tln("Press Enter when you hava had enought...");
aemon(true);
aemon(true);
aemon(true);
t();
t();
t();
try{
();// Wait until Enter key pressed
tln("Enter pressed...");
}
catch(IOException e){// Handle IO Exception
tln(e );// Output the exception
}
tln("Ending main()...");
return;
}
// Inner class
Private static class CustomThread implements Runnable{
// Constructor
public CustomThread(String firstName,String secondName,long aWhile){
tName=firstName;
ndName=secondName;
le=aWhile;
}
// override run method
public void run(){
try{
while(true){
tln(tName);
p(aWhile);
tln(ndName);
}
}
catch(InterruptedException e){
tln(firstName+secondName+e);
}
}
// Constants and Variables
private String firstName;
private String secondName;
private long aWhile;
}
}
-
2016下半年计算机二级考试C++试题及答案
1.已知一汉字的国标码是5E38,其内码应是()。A)DEB8B)DE38C)5EB8D)7E58答案:A2.已知三个字符为:a、Z和8,按它们的ASCII码值升序排序,结果是()。A)8、a、ZB)a、8、ZC)a、Z、8D)8、Z、a答案:D3.计算机技术中,下列度量存储器容量的单位中,最大的单位是()。A)KBB)MBC)ByteD)...
-
H3C认证无线技术专家考试简介
H3CSWLAN(H3CCertifiedSpecialistForWLAN,H3C认证无线技术专家)认证将帮助您在了解802.11协议族标准和主流WLAN设备及天线的基础上,进一步掌握无线网络勘测与设计,并具备使用H3C无线产品进行应用布署、工程实施和运维指导的能力。H3CSWLAN认证适用的对象包括:各行...
-
嵌入式系统历史发展
从20世纪七十年代单片机的出现到各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。嵌入式系统的出现最初是基于单片机的。70年代单片机的出现,使得汽车、家电、工业机器、通信装置以及成千上万种产品可以通过内嵌电子装置来获...
-
计算机二级office考试上机必知内容
成为一名程序员首先要掌握一种主流编程语言,学习任意一种主流的编程语言,例如C++语言。下面是小编整理的.关于计算机二级office考试上机必知内容,欢迎大家参考!一、考试内容要求:1、掌握计算机基础知识及计算机系统组成2、了解信息安全的基本知识、掌握计算机病毒...