Java核心技术第10版卷一重点内容

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 一个方法可以修改传递引用所对应的变量值,而不能修改传递值调用所对应的变量值。

public class Test {

	public static void main(String[] args) {
		int a = 10;
		doSome(a);
		System.out.println(a);
	}

	private static void doSome(int a) {
		System.out.println(a);
		a += 10;
		System.out.println(a);
		doSome2(a);
	}

	private static void doSome2(int a) {
		a += 10;
		System.out.println(a);
	}
	
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Java 父类强转子类

只有父类对象本身就是用子类new出来的时候, 才可以在将来被强制转换为子类对象.

 

 

 

 

 

 

 

 为什么要为接口增加静态方法

 

 

 

public class Test {
	public void ttt(Integer a){
		Function<Integer,String> x = s->{
			//com.cc.base.Test@1c20c684
			System.out.println(this.toString());
			return s.toString();
		};
		x.apply(a);
	}
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 使用异常机制的技巧
1.只在异常情况下使用异常机制(捕获异常所花费的时间大大超过了前者)

2.不要过分地细化异常

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

public static void main(String[] args) throws Exception {
		Properties properties = new Properties();
		properties.put("name","css");
		properties.put("pss","ccc");
		File file = new File("D:/cc.txt");
		OutputStream outputStream = new FileOutputStream(file);
		properties.store(outputStream,"测试");
	}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

public static void main(String[] args) throws InterruptedException, ExecutionException, Exception {
		ExecutorService executorService = Executors.newFixedThreadPool(4);
		List<Callable<String>> list = new ArrayList<>();
		for (int i = 0; i <100; i++) {
			int j = i;
			Callable<String> callable = ()->{
				ThreadLocalRandom random = ThreadLocalRandom.current();
				try {
					Thread.sleep(random.nextInt(1000));
				} catch (InterruptedException e) {
					return "notok"+j;
				}
				return "ok"+j;
			};
			list.add(callable);
		}
		List<Future<String>> list2 = executorService.invokeAll(list,1,TimeUnit.SECONDS);
		for (Future<String> future : list2) {
			if(!future.isCancelled()){
				System.out.println(future.get());
			}
		}
		Callable<String> callable = ()->{
			try {
				Thread.sleep(3000);
			} catch (InterruptedException e) {
				//e.printStackTrace();
				return "notok";
			}
			return "ok";
		}; 
	
		ExecutorCompletionService<String> completionService = new ExecutorCompletionService<String>(executorService);
		completionService.submit(callable);
		System.out.println(completionService.take().get());
		
		executorService.shutdownNow();
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值