当前位置: 首页 > news >正文

教育网站建设方案模板还有人用asp做网站吗

教育网站建设方案模板,还有人用asp做网站吗,手机怎么做网站,做引流的公司是正规的吗创建新执行线程有三种方法。 第一种方法是将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法。接下来可以分配并启动该子类的实例。 例如#xff0c;计算大于某一规定值的质数的线程可以写成#xff1a; class PrimeThread extends Thread {long minPrime;Pri…创建新执行线程有三种方法。 第一种方法是将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法。接下来可以分配并启动该子类的实例。 例如计算大于某一规定值的质数的线程可以写成 class PrimeThread extends Thread {long minPrime;PrimeThread(long minPrime) {this.minPrime minPrime;}public void run() {// compute primes larger than minPrime. . .}}然后下列代码会创建并启动一个线程 PrimeThread p new PrimeThread(143);p.start();1继承Thread 定义类继承Thread 重写run方法 把新线程要做的事写到run方法中 创建线程对象 开启新线程内部会自动执行run方法 具体的多线程实现代码如下 package com.yy.thread;public class Demo2_Thread { /*** 创建新执行线程有两种方法。* 一种方法是* ①将类声明为 Thread 的子类。* ②该子类应重写 Thread 类的 run 方法。* ③接下来可以分配并启动该子类的实例。* */public static void main(String[] args) {//开启一条线程Mythread mt new Mythread(); //4,创建线程(Thread类)的子类对象mt.start(); //5,开启线程需要一定的时间所以说JVM会先执行for循环语句也就是会先输出bb之后再输出aaaaaaa然后再相互交替输出//public void start() 使该线程开始执行Java 虚拟机调用该线程的 run 方法。 // mt.run(); //如果这样调用只是调用了run方法执行run方法里面的for循环线程还是主线程这一个线程不会出现交替的多线程形式//主线程for (int i 0; i 100; i) { //为了便于观察多线程的执行在主方法里面进行for循环System.out.println(bb); //这个for循环就是主线程的两条线程开启多线程便于观察}//两条线程相互交替进行即多线程实现}} class Mythread extends Thread{ //1继承Threadpublic void run(){ //2重写run方法for (int i 0; i 100; i) { //3将要执行的代码写到run方法中System.out.println(aaaaaaa); }} } 创建线程的第二种方法是声明实现 Runnable 接口的类。该类然后实现 run 方法。 然后可以分配该类的实例在创建 Thread 时作为一个参数来传递并启动。 采用这种风格的同一个例子如下所示 class PrimeRun implements Runnable {long minPrime;PrimeRun(long minPrime) {this.minPrime minPrime;}public void run() {// compute primes larger than minPrime. . .}}然后下列代码会创建并启动一个线程 每个线程都有一个标识名多个线程可以同名。如果线程创建时没有指定标识名就会为其生成一个新名称。 PrimeRun p new PrimeRun(143);new Thread(p).start();2实现Runnable 定义类实现Runnable接口 实现run方法 把新线程要做的事先到run方法中 创建自定义的Runnable子类对象 创建Tread对象传入Runnable 调用start()开启新线程内部会自动调用Runnable的run()方法 具体的多线程实现代码如下 package com.yy.thread;public class Demo3_Thread { /*** 创建线程的另一种方法是* ①声明实现 Runnable 接口的类。* ②该类然后实现 run 方法。* ③然后可以分配该类的实例在创建 Thread 时作为一个参数来传递并启动。* * Runnable里面只有一个run()方法实现Runnable只需要重写run()方法即可* * * 实现Runnable的原理* 查看源码* 1看Thread类的构造函数传递了Runnable接口的引用* 2通过init()方法找到传递的target给成员变量的target赋值* 3查看run方法发现run方法中有判断如果target不为null就会调用Runnable接口子类对象的run方法* */public static void main(String[] args) {MyRunnable wsq new MyRunnable(); //4创建Runnable的子类对象 // Runnable target wsq; //父类引用指向子类对象new MyRunnable()这个是子类对象也就是wsq Thread yy new Thread(wsq); //5将其当作参数传递给Thread的构造函数 wsq代表Runnable的子类对象yy.start(); //6开启线程 Thread里面才有start()方法// new Thread(wsq).start(); //这种方法与上面的两行代码实现的做用一样for (int i 0; i 100; i) {System.out.println(你陪我步入蝉夏越过城市喧嚣歌声还在游走你榴花般的笑容);}} } class MyRunnable implements Runnable { //1定义一个类实现Runnable方法Override public void run() { //2重写run方法for (int i 0; i 100; i) { //3将要执行的代码写到run方法中System.out.println(我真的好想你在每一个雨季。); }} } 两种方法的区别: a.继承Thread 由于子类重写了Thread类的run()当调用start()时直接找子类的run()方法b.实现Runnable 构造函数中传入了Runnable的引用成员变量记住了它start()调用run()方法时内部判断成员变量Runnable的引用是否为空不为空编译时看的是Runnable的run()运行时执行的时子类的run()方法 继承Thread(开发中优先考虑) 好处可以直接使用Thread类中的方法代码简单弊端如果已经有了父类就不能有这个方法因为java是单继承的 实现Runnable接口(实际上是对继承Thread的补充) 好处即使自己定义的线程类有了父类也没关系因为有了父类也可以实现接口接口是可以多实现的拓展性强弊端不能直接使用Thread中的方法需要先获取到线程对象后才能得到Thread的方法代码复杂 第三种方法是创建类是实现Callable这个接口。然后该类重写 Callable这个接口里的抽象方法call。 Callable 接口类似于 Runnable两者都是为那些其实例可能被另一个线程执行的类设计的。但是 Runnable 不会返回结果并且无法抛出经过检查的异常。 案例通过实现Callable这个接口来实现多线程创建一个求和类 具体的多线程实现代码如下 package com.yy.thread;import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future;public class Demo6_Callable { /*** 第三种线程创建方式* T FutureT submit(CallableT task)* 提交一个返回值的任务用于执行返回一个表示任务的未决结果的 Future。* 该 Future 的 get 方法在成功完成时将会返回该任务的结果。 * Callable 接口类似于 Runnable两者都是为那些其实例可能被另一个线程执行的类设计的。但是 Runnable 不会返回结果并且无法抛出经过检查的异常。* * */public static void main(String[] args) throws InterruptedException, ExecutionException {ExecutorService pool Executors.newFixedThreadPool(2); //创建线程池线程池里面可以养两个线程FutureInteger f1 pool.submit(new MyCallable(100)); //由于下面创建的类中里面有一个有参构造方法这里得传一个参数FutureInteger f2 pool.submit(new MyCallable(50));//submit返回一个Future所以说应该用Future去接收//Future可以获取出来1-100或者是1-50的求和结果System.out.println(f1.get());System.out.println(f2.get());//V get() throws InterruptedException,ExecutionException如有必要等待计算完成然后获取其结果。 pool.shutdown(); //关闭线程池}} class MyCallable implements CallableInteger{ //创建一个MyCallable类去实现Callable这个接口private int num; //设置一个成员变量numpublic MyCallable (int num){ //创建一个有参构造方法this.num num; //num是传进去的数}Overridepublic Integer call() throws Exception { //重写Callable这个接口里面的抽象方法call这里的返回值类跟泛型Integer是一致的int sum 0; //实现求和代码for (int i 1; i num; i) {sum i;}return sum; //返回sum}}
http://www.pierceye.com/news/578546/

相关文章:

  • aspnet网站开发实例视频天津网站建设普斯泰
  • 玉溪网站建设设计心理医院网站优化服务商
  • 支付宝网站接口申请建湖做网站哪家最好
  • 网站的超级链接怎么做无法运行电脑wordpress
  • 网站建设企业网银e路通西宁做网站_君博相约
  • 陕西网站建设公司哪有大连网站建设
  • 东莞做网站 汇卓百度网盘官网登录入口
  • 网站建设哪谷歌浏览器安卓版下载
  • 中国建设银行上海市分行网站天津工程建设信息网站
  • 怎么做好网站开发、设计中国站长网站
  • 沈阳网站建设tlmh室内设计装修案例
  • 网站 linux 服务器配置长沙企业网站建设价格
  • 低价网站制作企业智慧团建官网登录口手机版
  • 临沂网站制作专业如何 做网站
  • 旅游景区网站开发的政策可行性天翼云电脑免费领取
  • 企业网站建设报价做网站要实名认证吗
  • 设计网站得多少钱ui设计师个人简历
  • 彩票网站建设基本流程wordpress上篇下篇代码
  • 一站式服务的优点无锡网站搜索优化
  • 怎么做地区网站烟台网站建设首推企汇互联见效付款
  • 杭州网站优化服务网站内容方案
  • 大气手机网站模板免费下载军事网站模板下载
  • 大兴德艺网站建设wordpress上传的gif图不会动
  • 三门峡住房和建设局网站房产主题wordpress
  • 网站改版 权重php做网站脑图
  • 交易网站建设需要学什么网店装修
  • 青岛市城市建设档案馆网站东莞网络推广优化排名
  • 成交型网站做网站优化的价格
  • 后台网站设计烟台优化网站公司
  • 网站开发中涉及的侵权行为软件开发案例展示