(笔记十)eclipse介绍、JUnit、5.0特性、枚举

来源:互联网 发布:开黑用什么软件 编辑:程序博客网 时间:2024/06/05 22:50

传智播客 方立勋老师

1.eclipse

a.运行问题:eclipse failed to create java virtual mathine
解决:ini文件修改256为128
b.项目中Java Compiler和Java Build Path设置

2.断点(注意:停止调试和删除断点)
f5:step into 
f6:step over
f7:step return 
drop to frame:跳到当前方法第一行
resume:跳到下一个断点

3.快捷键
内容助理:alt+/
快速修复:Ctrl+1
导包:Ctrl+Shift+O
代码排版:Ctrl+Shift+F
向前向后(代码查看跟踪):Alt+方向
查看方法说明:F2
注释:Ctrl+shife+/  (取消\)
更改大小写:Ctrl+Shift+ X (或Y)
复制行:Ctrl+Alt+向下
查看类继承关系:Ctrl+T
查看源代码:Ctrl+Shift+T   或 Ctrl+鼠标左键

4.JUnit
jar包存在于Eclipse安装目录plugins下
a)新建测试类,在方法前使用注解@Test(import org.junit.Test)
b) @Before,@After在每个测试方法前后自动调用(import org.junit.Before与After)
c) @BeforeClass,@AfterClass在类加载和释放时自动调用,在static方法前(import对应类)
d) Assert断言

5.新特性5.0
a)静态导入 import static 包名.类名.静态属性|方法|*
import static java.lang.System.out;
对比:
import 包:导入包下面的某个或所有的类,直接使用该类
import statc :直接使用类中的,属性或方法

b)自动装箱:把一个基本数据类型直接赋值给对应的包装类;
自动拆箱:把一个包装类直接赋值给对应的基本数据类型;
List list=new ArrayList();
list.add(1);
int j=(Integer)list.get(0);

c)增强for:只能在数组或实现Iterable接口的集合类
for(变量类型 变量 : 集合)
{
}
注:只读

6.方法的可变参数(★★)
a)格式:类型... 变量名
public  void Run(int ...nums){int sum=0;for(int i=0;i<nums.length;i++){sum+=nums[i];}System.out.println(sum);}
b)可以直接以数组的方式传递,若不是,编译器将自动创建一个数组保存传递的参数。
c)Arrays.asList(T ...a)方法,参数为对象,如果传入基本类型数组时,会将它看作一个对象(★★)

7.枚举
a)简单使用:
enum Grade{A,B,C,D,E;}
b)构造函数、字段和属性(★★★★)
enum Grade{A("90-100),B("80-89"),C("70-79"),D("60-69"),E("0-59");private String value;private Grade(String value){this.value=value;}public String getValue(){return this.value;}}
c)带抽象方法的枚举
enum Grade {A("90-10") {public String localValue() {return "优";}},B("80-89") {public String localValue() {return "良";}},C("70-79") {public String localValue() {return "中";}},D("60-69") {public String localValue() {return "差";}},E("0-59") {public String localValue() {return "不及格";}};private String value;private Grade(String value) {this.value = value;}public String getValue() {return this.value;}public abstract String localValue();}

d)每个值代表枚举类的一个实例对象
e)枚举构造函数必须是private,可以实现接口、抽象类
f)若枚举只有一个值,则可当作单件设计模式使用
g)声明的枚举类,都继承了java.lang.Enum类(它的方法values在JDK中查不到)