java新手笔记32 jdk5新特性
1.for
package com.yfs.javase; import java.awt.Color;
import java.util.Calendar;
import java.util.HashSet;
import java.util.Set;
@SuppressWarnings("all")
public class ForDemo { /**
* @param args
*/
public static void main(String[] args) {
//useArray();
//useSet();
boxTest();
//
// Calendar cal = Calendar.getInstance();
// int year = cal.get(Calendar.YEAR); }
@Deprecated
public static void boxTest() {
int a = 10;
Integer oInt = new Integer(a);
Integer o2 = a;//自动装箱
System.out.println("o2 = " + o2); int b = o2 + 1; // 自动拆箱
System.out.println("b = " + b);
}
public static void useSet() {
Set<String> set = new HashSet<String>();
set.add("eee");
set.add("ccc");
set.add("aaa");
set.add("bbb");
set.add("yyy");
for (Object s : set) {
System.out.print((String)s + "\t");
} }
//增强for
public static void useArray() {
int[] a = {45,23,11,68,28,65,9,2,18,97};
for(int i : a) {
System.out.print(i + "\t");
} }
@Override//元数据
public String toString() {
// TODO Auto-generated method stub
return super.toString();
} }
2.静态导入
package com.yfs.javase;
import static java.lang.Math.PI;//静态导入
import static java.lang.Math.sqrt;
public class StaticImport { /**
* @param args
*/
public static void main(String[] args) {
//staticTest();
paramTest("java",2,3);
// paramTest(2,3,4,5,6);
// paramTest(10,20,30,40);
// paramTest(new int[]{45,22,61,32,78,15,24,63,98});
}
//变长参数 1.只能有一个 2.类型没有限制 3.可以传其他参数 必须在变长参数之前
public static void paramTest(String name, int ... a /*, Object...obj*/) {
int sum = 0;
System.out.println("call paramTest(int ... a) ...");
for (int i = 0; i < a.length; i++) {
sum += a[i];
}
System.out.println("sum = " + sum); } public static void paramTest(int a,int b) {
int sum = a + b;
System.out.println("sum = " + sum); } public static void staticTest() {
double area = Math.PI * 2 *2;
area = PI* 4 * 4;
area = PI* 6 * 6;
double result = Math.sqrt(16);
result = sqrt(81);
} }
3.Thread1继承 Thread
package com.yfs.javase.thread; public class Thread1 extends Thread { public void test() {
while( true ) {
System.out.println("bbbbbbbbbb");
}
} @Override
public void run() {//覆盖父类run方法
while( true ) {
System.out.println(Thread.currentThread().getName() + "bbbbbbbbbb");
}
} }
4.Thread2实现Runnable接口
package com.yfs.javase.thread; public class Thread2 implements Runnable { @Override
public void run() {
while(true) {
System.out.println(Thread.currentThread().getId() + "ccccccccccc");
} } }
5.Thread1测试(单线程)
package com.yfs.javase.thread; public class ThreadDemo1 { public static void main(String[] args) { Thread1 th1 = new Thread1();
th1.test(); for (int i = 0;; i++) {
System.out.println("aaaaaaaaaaa"); } //System.out.println("执行结束..."); } }
6.Thread2测试(多、线程启动)
package com.yfs.javase.thread; public class ThreadDemo2 { public static void main(String[] args) {
//继承Thread类
Thread1 th1 = new Thread1();
th1.start();//调用父类start方法 //实现runnabel接口
Thread2 r2 = new Thread2();
Thread th2 = new Thread(r2);
th2.start(); for (int i = 0;; i++) {
System.out.println("aaaaaaaaaaa"); } //System.out.println("执行结束..."); } }
7.currentThread
package com.yfs.javase.thread; public class ThreadDemo3 {
// 线程启动
public static void main(String[] args) throws Exception {
// 继承Thread类
Thread1 th1 = new Thread1();
//th1.run();//普通方法调用 线程的执行代码============?????注意
//启动
th1.setName("逗你玩 ");
th1.start(); //接口
Thread th2 = new Thread(new Thread2()); th2.start();
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);===========
for (int i = 0;; i++) {
Thread.sleep(1);
System.out.println( Thread.currentThread().getPriority() + " aaaaaaaaaaa"); } } }
java新手笔记32 jdk5新特性的更多相关文章
- JDK5新特性之 可变参数的方法
可变参数的方法:不知道这个方法该定义多少个参数 注意: > 参数实际上是数组 > 必须写在参数列表最后一个 package cn.itcast.day24.varparam; import ...
- Java API —— JDK5新特性
JDK5新特性 自动拆装箱.泛型.增强for.静态导入.可变参数.枚举 1.增强for概述 1)简化数组和Collection集合的遍历 2)格式: ...
- day27<反射&JDK5新特性>
反射(类的加载概述和加载时机) 反射(类加载器的概述和分类) 反射(反射概述) 反射(Class.forName()读取配置文件举例) 反射(通过反射获取带参构造方法并使用) 反射(通过反射获取成员变 ...
- JDK5 新特性
JDK5新特性目录导航: 自动拆装箱 Foreach 静态导入 可变参数 Var args 枚举 格式化输出 泛型 ProcessBuilder 内省 线程并发库(JUC) 监控和管理虚拟机 元数据 ...
- Java高新技术 JDK1.5之新特性
Java高新技术 JDK1.5的新特性 知识概要: (1)静态导入 (2)可变参数 (3)增强for循环 (4)基本数据类型的自动拆箱和装箱 静态导入 ...
- Java9发布回顾Java 8的十大新特性
java9已经在北京时间9月22日正式发布,开发者可以在oracle jdk官网上下载到最新的jdk9. 今天,我们先来一起复习一下2014年发布的Java 8的十大新特性.先来喝杯java~~~ 按 ...
- C++ 学习笔记(一些新特性总结3)
C++ 学习笔记(一些新特性总结3) public.protected 和 private 继承 public 继承时,基类的存取限制是不变的. class MyClass { public: // ...
- Java学习:JDK8的新特性
Java学习:JDK8的新特性 一.十大特性 Lambda表达式 Stream函数式操作流元素集合 接口新增:默认方法与静态方法 方法引用,与Lambda表达式联合使用 引入重复注解 类型注解 最新的 ...
- Java 各个版本中的新特性
新特性你知道多少? Java 8 Lambda 表达式 接口增加默认方法等 方法引用 流 Stream Java 9 模块系统 交互式工具jshell .of() 创建不可变集合 接口支持私有方法 更 ...
随机推荐
- TChromeTabs 使用日记
1.如何让 Tab 在拖放时,拖放图形中带有 TabControl 的内容. 增加 ChromeTabs 的 NeedDragImageControl 事件,并在代码中设置 DragControl 为 ...
- Android短信彩信收发流程(应用层)
下图为ComposeMessageActivity中confirmSendMessageIfNeeded部分的信息发送流程.主要以接收者有效性的确认为主,然后转向sendMessage方法进行发送. ...
- SOA面向服务化编程架构(dubbo)
dubbo 是阿里系的技术.并非淘宝系的技术啦,淘宝系的分布式服务治理框架式HSF啦 ,只闻其声,不能见其物.而dubbo是阿里开源的一个SOA服务治理解决方案,dubbo本身 集成了监控中心,注 ...
- UVA 816 - Abbott's Revenge(BFS)
UVA 816 - Abbott's Revenge option=com_onlinejudge&Itemid=8&page=show_problem&category=59 ...
- WebBrowser 禁用脚本错误提示
public partial class Text : UserControl { public Text() { ...
- MHA手动在线切换主 原创3(主不参与复制)
monitor 执行:slave2连接到slave1,server1 不做(主/从复制角色,停在那里) [root@monitor app1]# masterha_master_switch --co ...
- Shell脚本的安全性
Shell脚本给管理和使用系统都带来了巨大的便利,然后在多用户系统中,也带来了许多安全性问题.在脚本中可能存在的安全性问题如下: (1)在脚本中使用cd命令,切换到不安全的目录执行脚本. (2)在脚本 ...
- 解决用ASP.NET下载文件时,文件名为乱码的问题
关键就一句: string strTemp = System.Web.HttpUtility.UrlEncode(strName, System.Text.Enc ...
- RPC框架Thrift例子-PHP调用C++后端程序
更新 2016-02-22: Response对象不用主动创建. 前言 前段时间用了一下Facebook的开源RPC框架Thrift,做PHP客户端调用C++后端程序,真心觉得Thrift不错! 本文 ...
- SqlServer2008 之 应用积累
1.断开数据库连接,在原有查询窗口(断开数据库连接的未关闭查询窗口),对现在所连数据库进行操作,结果是对已断开数据库的误操作. 正确操作:重新连接数据库后,应关闭原有查询窗口,新建查询窗口后再执行操作 ...