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() 创建不可变集合 接口支持私有方法 更 ...
随机推荐
- Codeforces Round #115 B. Plane of Tanks: Pro 水题
B. Plane of Tanks: Pro Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/17 ...
- codeforces GYM 100114 J. Computer Network tarjan 树的直径 缩点
J. Computer Network Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100114 Des ...
- 粒子系统1:简介&工具使用
直接使用工具来感受一下粒子系统的强大威力吧. 网络上有很多粒子编辑器,大多数都是收费的.magicalsoft提供了一个免费的粒子编辑器(该工具目前只有mac版本),界面如下: 我们将针对这个编辑器来 ...
- Cloudera集群中提交Spark任务出现java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HTableDescriptor.addFamily错误解决
Cloudera及相关的组件版本 Cloudera: 5.7.0 Hbase: 1.20 Hadoop: 2.6.0 ZooKeeper: 3.4.5 就算是引用了相应的组件依赖,依然是报一样的错误! ...
- Helpers\PHPMailer
Helpers\PHPMailer PHPMailer is a third party class for sending emails, Full docs are available athtt ...
- 全面谈谈Aspects和JSPatch兼容问题
1. 背景 Aspects 和 JSPatch 是 iOS 开发中非常常见的两个库.Aspects 提供了方便简单的方法进行面向切片编程(AOP),JSPatch可以让你用 JavaScript 书写 ...
- css笔记18:盒子模型案例分析示范
- python(1) - 第一个程序 Hello World!
进入python3的解释器环境. 我们让解释器输出 “Hello World!” 解释器成功的输出了Hello world! 程序就这样完成了. 当然上面的程序我们是在解释器中完成的. 我们可以通过 ...
- Objective-C ,ios,iphone开发基础:JSON解析(使用苹果官方提供的JSON库:NSJSONSerialization)
json和xml的普及个人觉得是为了简化阅读难度,以及减轻网络负荷,json和xml 数据格式在格式化以后都是一种树状结构,可以树藤摸瓜的得到你想要的任何果子. 而不格式化的时候json和xml 又是 ...
- php创建文件夹后设置文件夹权限(转)
原文链接:http://www.phpstudy.net/b.php/69873.html PHP mkdir()无写权限的问题解决方法 使用mkdir创建文件夹时,发现这个函数有两个参数,第二个参数 ...