1. @进程
:程序的一次执行 (程序代码, 程序数据,程序资源)
@线程
:进程中程序代码的一个执行序列 (可共享访问进程中的数据和资源,操作系统按线程来调度程序的执行)
2.创建线程的方法
:
@定义一个线程类,它继承类Thread并重写其中的方法run(),用这种方法定义的类不能再继承其他类(因为单继承)
class SimpleThread extends Thread{
public SimpleThread(String str){
super(str);
}
public void run(){
for (int i = 0; i < 10; i++){
System.out.println(i + " " + getName());
try{
sleep((int)(Math.random() * 1000));
} catch (InterruptedException e){
}
}
System.out.println("DONE! " + getName());
}
}
@提供一个实现接口Runnable的类作为线程的目标对象(可以再继承其他类)
public class Clock extends java.applet.Applet implements Runnable{
Thread clockThread;
public void start(){
if (clockThread== null){
clockThread= new Thread(this, "Clock");
clockThread.start();
}
}
public void run(){
while (clockThread!= null){
repaint();
try{
clockThread.sleep(1000);
}catch (InterruptedExceptione){
}
}
}
public void paint(Graphics g){
Date now = new Date();
g.drawString(now.getHours() + ":" + now.getMinutes()
+ ":" + now.getSeconds(), 5, 10);
}
public void stop(){
clockThread.stop();
clockThread= null;
}
}
3.线程生命周期及控制
,各方法的含义:start,sleep,suspend,resume,wait,notify,stop,join(等待线程执行完毕),yield等
4.线程优先级
:最低优先级1,最高优先级10,默认优先级5.可用getPriority( )和setPriority(int p)来获得和设置
5.多线程互斥:
对象互斥锁
@用关键字volatile
来声明一个共享数据(变量)
@用关键字synchronized
来声明一个操作共享数据的方法或一段代码
6.多线程同步
@用wait()和notify()/notifyAll()方法(在java.lang.Object类中定义)来协调线程间的运行进度关系
@notify()/notifyAll()方法和wait()方法都只能在被声明为synchronized的方法或代码段中调用
7.守护线程
@为其它线程提供服务的线程,它一般应该是一个独立的线程,它的run()方法是一个无限循环
@守护线程与其它线程的区别是,如果守护线程是唯一运行着的线程,程序会自动退出
@setDaemon(true)使线程成为守护线程(必须在start之前调用)
setDaemon(false)使线程成为一般线程(必须在start之前调用)
8.集合基本概念
@Collection 接口是一组允许重复的对象
@Set 接口继承Collection,但不允许重复
@List 接口继承Collection,允许重复,并引入位置下标
@Queue接口继承Collection,提供其他的插入、提取和检查操作
@Map 接口既不继承Set 也不继承Collection,将键映射到值的对象
9.java.util.conturrent
包的了解
分享到:
相关推荐
在准备大数据面试的过程中,Java基础是必不可少的一部分,尤其聚焦于集合类、多线程和JVM这三大核心领域。下面将分别对这三个方面进行深入探讨。 **一、Java集合类** Java集合框架是处理对象组的重要工具,它包括...
大数据面试复习---Java基础---集合类、多线程、JVM 大数据面试复习----常问问题分析 大数据面试复习----画重点----思维导图 大数据面试复习----简历编写 大数据面试复习----练习的面试题+笔试题 大数据面试复习----...
01大数据面试复习----Java基础---集合类、多线程、JVM 02大数据面试复习----画重点----常问问题分析 03大数据面试复习----画重点----精心制作热门技术思维导图 04大数据面试复习----画重点----56家+真实互联网大公司...
7. **多线程**:介绍线程的概念,创建线程的方式(继承Thread类和实现Runnable接口),线程同步和通信机制(如synchronized关键字、wait/notify、Semaphore等)。 8. **反射**:探讨如何在运行时动态获取类的信息并...
最后则涉及到较为复杂的多线程编程,给出了让两个不同线程交错打印1~5的方法,体现了并发控制的知识点。每一个示例都配有实际可运行的代码片段,使理论与实操得以紧密结合。 适合人群:正在备战 Java 考试的学生,...
14. **Chapter 14 - 多线程**:介绍线程的创建、同步机制(synchronized、wait/notify、ReentrantLock),以及线程池。 15. **Chapter 15 - 文件与文件流**:涉及文件的创建、读写、复制,以及文件流的操作。 16. ...
### Java考试复习资料详解 #### 一、架构模式:B/S与C/S - **B/S架构**(Browser/Server,浏览器/服务器)是一种通过Web浏览器进行访问的应用系统架构。客户端只需要一个Web浏览器即可,无需安装任何软件。所有的...
10. **多线程**:Java支持多线程编程,理解Thread类、Runnable接口、同步机制(synchronized关键字、wait()、notify()、notifyAll())以及并发工具类如ExecutorService、Semaphore等。 11. **反射机制**:Java反射...
01大数据面试复习----Java基础---集合类、多线程、JVM 02大数据面试复习画重点---常问问题分析 03大数据面试复习----画重点----精心制作热门技术思维导图 04大数据面试复习----画重点----56家+真实互联网大公司面试...
8. **多线程**: - 创建和管理线程,了解Thread类和Runnable接口。 - 线程同步机制,如synchronized关键字、wait()、notify()和notifyAll()方法,以及死锁的概念。 9. **网络编程**: - Socket编程,创建TCP/IP...
`Vector`则是线程安全的,但在多线程环境下使用效率较低。 - `Stack`是`Vector`的一个子类,实现了栈的操作,如`push`、`pop`、`peek`和`empty`。 3. **Queue接口** - `Queue`接口用于实现队列操作,支持FIFO...
8. **多线程**:Java提供了内置的多线程支持,通过`Thread`类或实现`Runnable`接口创建并运行线程。线程间的通信和同步通过`synchronized`关键字、`wait()`、`notify()`和`notifyAll()`等方法实现。 9. **输入/输出...
在2014 Java复习提纲中,我们可以期待看到以下内容: 1. **Java语言基础**:这可能涵盖了变量、数据类型、运算符、控制结构(如if语句、for循环和while循环)、方法的定义和调用,以及基本的输入输出操作。 2. **...
这份名为"面试真题包含spring-java-集合-框架-并发-spring-运维-数据库等多领域45卷合集.rar"的压缩包是为准备Java相关面试的求职者精心整理的资源库。它包含了45套涵盖多个领域的面试题,旨在帮助求职者全面复习和...
6. **多线程**:理解线程的基本概念,包括线程的创建、同步和通信。学习synchronized关键字、wait()、notify()和notifyAll()方法,以及Thread类和Runnable接口的使用。 7. **网络编程**:学习Socket编程,包括...
Java程序设计是计算机科学中的一个重要领域,尤其对于软件...掌握这些基本知识点,有助于深入理解Java程序设计,并为进一步学习Java的高级特性,如异常处理、集合框架、I/O流、多线程编程、反射、泛型等奠定坚实基础。
Java是一种广泛使用的高级编程语言,以其“一次...在准备Java入学考试时,阅读“Java入学考试复习资料.pdf”将涵盖这些关键知识点。通过深入理解和实践,你可以建立起坚实的Java基础,为后续的学习和职业发展铺平道路。
【Java期末考试复习知识点】 1. 计算与比较班级平均成绩和方差 ...在实际编程中,还需要学习更多高级主题,如面向对象编程、异常处理、集合框架、IO流、多线程等,这些都是Java开发者必备的知识。
6. **多线程**:Java内置对多线程的支持,通过Thread类和Runnable接口可以创建并管理多个执行线程。理解和熟练运用并发机制,如同步锁(synchronized)、wait()和notify(),是解决复杂问题的关键。 7. **反射机制**...
Java考试复习题本科.pdf 以下是根据提供的文件信息生成的知识点: Java基础 1. Java中的基本数据类型包括整型、浮点型、布尔型、字符型等。例如,Java中的整型包括byte、short、int、long等。 2. Java中的变量...