目录
一、学习内容
- 反射
- Maven
具体要点:
- 反射机制和用法
- Maven负责项目的自动构建,帮助开发人员做项目代码的编译,测试, 打包,安装,部署等工作;以及管理依赖(管理项目中使用的各种jar包)
- maven工具的获取和安装
-
maven中的概念
①POM
②约定的目录结构
③坐标
④依赖管理
⑤仓库管理
⑥生命周期
⑦插件和目标
⑧继承
⑨聚合 -
命令:
1) mvn clean: 清理命令, 作用删除以前生成的数据, 删除target目录。
2)mvn compile:编译命令,执行的代码编译。
3)mvn test-compile: 编译命令, 编译src/test/java目录中的源文件。
4)mvn test:测试命令, 作用执行 test-classes目录的程序, 测试主程序代码是否符合要求。
5)mvn package:打包,作用是把项目中的资源class文件和配置文件都放到一个压缩文件中, 默认压缩文件是jar类型的。
6)mvn install : 把生成的打包的文件 ,安装到maven仓库。
-
idea中集成maven
二、项目展示
2.1 案例-1
知识点:反射
2.1.1 源码及展示
Homework01.java
package com.weiwei.reflection.homework;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Homework01 {
public static void main(String[] args) throws InstantiationException, IllegalAccessException, NoSuchFieldException, NoSuchMethodException, InvocationTargetException {
Class<PrivateTest> privateTestClass = PrivateTest.class;
PrivateTest privateTestObj = privateTestClass.newInstance();
Field name = privateTestClass.getDeclaredField("name");
name.setAccessible(true);
name.set(privateTestObj,"天龙八部");
Method getName = privateTestClass.getMethod("getName");
Object invoke = getName.invoke(privateTestObj);
System.out.println("name的属性值=" + invoke);
}
}
class PrivateTest{
private String name = "hellokitty";
public String getName(){
return name;
}
}
Car.java
package com.weiwei.reflection;
public class Car {
public String brand = "宝马";
public int price = 500000;
public String color = "白色";
@Override
public String toString() {
return "Car{" +
"brand='" + brand + '\'' +
", price=" + price +
", color='" + color + '\'' +
'}';
}
}
2.2 案例-2
知识点:Maven
2.2.1 源码及展示