传智博客课堂学习笔记3.27

这篇博客回顾了Java的可变参数、增强for循环、静态引用等基础知识,深入探讨了反射机制,包括构造器、字段、方法的访问,以及注解的使用和读取。还涉及了枚举、内省机制、泛型和类装载器的概念,以及静态和动态代理的实现。内容涵盖了从基础到高级的Java技术,适合进阶学习。
摘要由CSDN通过智能技术生成

传智博客课堂学习笔记3.27

复习
.可变参数
.增强for循环
.静态引用
.装箱、拆箱
.内省 java.beans
.枚举Enum
.反射(构造对象【默认构造器和指定构造器,如果构造器属性为private,通过getDeclaredConstructor,setAccessiable(true)】,
 读写Field,获取属性【getter和setter方法、属性类型】,获取和调用方法【如果方法是static,调用时method.invoke(null,args)】
 .读取注解)


XML用作配置应用
.注解用作配置
1.通过反射技术读取注解
2.通过反射技术读写field


import java.lang.annotation。RetentionPolicy;
RetentionPolicy.RUNTIME:指定该注解保留在源代码/编译过后的class并随着类被装载到JAVA虚拟机内
RetentionPolicy.CLASS:指定该注解只保留在源代码/编译过后的class中
RetentionPolicy.SOURCE:指定该注解只保留在源代码上


.泛型generic
所有的泛型都必须实现ParameterizedType接口

方法上、类上
泛型的继承
泛型的反射

 


public Class<? super T>getXxxx()
{

}

public class
Class<? super T>返回的是class对象,class的类型必须是T的父类

 

public void getXxx(Class<?> sss)
{

}

 


.代理,ClassLoader,BeanUtil(可以实现类型转换和对属性进行操作)
ClassLoader负责从指定路径加载字节码到java虚拟机
类装载器
Bootstrap类装载器
ExtClassLoader
AppClassLoader

类装载器的委托模式

Field:
getModifiers
public int getModifiers()Returns the Java language modifiers for the field represented by this Field object, as an integer. The Modifier class should be used to decode the modifiers.


class.forName():get class for name

compile time 和 run time

the name of the class object for a one-dimensional int array is [I

System.out.println(String[].class.getName());

Class cls = Class.forName("[Ljava.lang.String;");

X.class.newInstance() is the same as new X().


静态代理
动态代理
通过JDK代理技术创建代理技术时,目标对象必须具有接口(创建出来的代理需要实现这些接口)

public class Proxy7 implements PersonService{
 private InvocationHandler h = new MehodInvokeBean(target);
 
 public String sayHello(String name){
  h.invoke(this,Method["sayHello"],name);
 }
}

 

要求:
可变参数
增强for循环
装箱/拆箱
内省(读取属性)
枚举(简单的定义)
注解(简单的定义)
泛型(简单的定义)
反射(读写Field,构造对象,获取和调用方法)

 

目标:
反射获得属性

 


今天讲课内容较多,并且比较深入复杂。需要一定的时间消化整理。幸亏课程安排比较合理,每两三天即有一天休息。方便了学习。
黎老师讲课比较深入,会涉及到一些高级技术。显然是技术型高手~

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值