「javacall方法」javacallable

博主:adminadmin 2022-11-22 17:29:05 74

本篇文章给大家谈谈javacall方法,以及javacallable对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

使用java编写代码如下要求

NewPhone类

package com.baidu.question;

public class NewPhone extends Phone {

    private boolean mute = true;

    @Override

    public void call() {

        if(mute){

            super.call();

        }else{

            System.out.println("语音已关闭");

        }

    }

    //这里是直接设置

    public void setMute(boolean mute){

        this.mute=mute;

    }

    //担心你的题目是要求两种方法,写的第二种,下面两个方法负责开关

    public void openMute(){

        this.mute=true;

        /*

        * 也可以这样写

        * setMute(true);

        * 下边的方法一样

        * */

    }

    public void closeMute(){

        this.mute = false;

    }

}

Phone类

package com.baidu.question;

public class Phone {

    public void call(){

        System.out.println("打电话");

    }

}

测试类

package com.baidu.question;

public class PhoneTest {

    public static void main(String[] args) {

        Phone phone = new Phone();

        phone.call();

        NewPhone newPhone = new NewPhone();

        newPhone.call();

        newPhone.setMute(false);

        newPhone.call();

        newPhone.openMute();

        newPhone.call();

        newPhone.closeMute();

        newPhone.call();

    }

}

测试结果

打电话

打电话

语音已关闭

打电话

语音已关闭

Java Callable接口的call方法什么时候被调用

线程提交执行的时候就会被调用,就像run方法一样,只不过这里在未来可以得到call执行的结果

import java.util.ArrayList;

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;

import java.util.concurrent.TimeUnit;

class TaskWithResult implements CallableString{

private int id;

private static int count =10;

private final int time =count--;

public TaskWithResult(int id){

this.id = id;

}

@Override

public String call() throws Exception {

TimeUnit.MILLISECONDS.sleep(100);

return "Result of TaskWithResult : "+ id+", Time= "+time;

}

}

public class CallableDemo {

public static void main(String[] args) throws InterruptedException, ExecutionException {

 ExecutorService exec = Executors.newCachedThreadPool();

 ArrayListFutureString results =new ArrayListFutureString();

 for(int i=0;i10;i++){

 results.add(exec.submit(new TaskWithResult(i)));

 }

 

 for(FutureString fs : results){

 System.out.println(fs.get());

 }

}

}

Java call和callback的用法

A对象调用B接口的b方法,b方法又反过来调用A对象中的c方法。

A调用B接口时把自身给B接口,至于怎么处理,由B的实现类去做,不关A的事。

原文出自 希望能帮到你

关于javacall方法和javacallable的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。