题目如下: 子线程循环10次,接着主线程循环100,接着又回到子线程循环10次, 接着再回到主线程又循环100,如此循环50次 思路如下: 子线程语主线程为互斥,可用SYNCHRONIZED.很容易想到如下代码 package concurrent; public class theFirstIdea{ /** * @param args */ public static void main(String[] args) { new Thread(//子线程 new Runnable(){ pu…
/* * 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1.写出程序. */ public class ThreadTest { private int j; public static void main(String[] args) { ThreadTest tt = new ThreadTest(); Inc inc = tt.new Inc(); Dec dec = tt.new Dec(); Thread t1 = new Thread(inc); Thread t…
package cn.usst.DataTest6; /** * 设计四个线程,当中共两个线程每次对j添加1,另外两个线程每次对j降低1.循环100次,写出程序. * @ * */ public class DataTest6 { private int j; public static void main(String[] args) { DataTest6 dt = new DataTest6(); Inc inc = dt.new Inc(); Dec dec = dt.new Dec()…
题目:设计 4 个线程,其中两个线程每次对 j 增加 1 ,另外两个线程对 j 每次减少 1 .写出程序. 代码实现 public class ThreadTest{ private int j; class Inc implements Runnable{ @Override public void run() { // TODO Auto-generated method stub for(int i=0;i<100;i++) { inc(); } } } // 相加操作 private s…
本题并不难,实现方式有很多种,有很多种结构. 方法一:利用内部类实现,两个实现加减的类实现Runnable接口,然后再实现4个具体线程. 代码: public class ManyThreads { private int j; public static void main(String[] args) { // TODO Auto-generated method stub ManyThreads many = new ManyThreads(); Inc inc = many.new In…
先设计一个类处理加减这一行为: public class ManyThread { private int j = 0; public synchronized void inc(){ j++; System.out.println(Thread.currentThread().getName() + "inc" + j); } public synchronized void dec(){ j--; System.out.println(Thread.currentThread().…
51.设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1,写出程序.  以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题. public class ThreadTest1 { private int j; public static void main(String args[]){ ThreadTest1 tt=new ThreadTest1(); Inc inc=tt.new Inc(); Dec dec=tt.new Dec(); for(int i=0;i<…
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象.2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派…
Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法,其他.有些题来自网上搜集整理,有些题来自学员面试后的反馈,说真的,少数一些网上的面试题,我真怀疑其是否还有存在价值! 1.   一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?      可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致. 2.Java有没有goto?   …
面向对象的特征有哪些方面   1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题,而6. 只是选择其中的一部分,7. 暂时不8. 用部分细节.抽象包括两个方面,9. 一是过程抽象,10. 二是数据抽象. 11. 继承:继承是一种联结类的层次模型,12. 并且允许和鼓励类的重用,13. 它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,14. 这个过程称为类继承.新类继承了原始类的特性…