反射与 NEW | 学习笔记

简介: 快速学习反射与 NEW。

开发者学堂课程【Java 面试疑难点串讲1:面试技巧及语言基础:反射与 NEW】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/24/detail/506


反射与 NEW

内容介绍

一.反射与 new 的关系.

一.反射与new的关系.

对于反射机制而言,本质上的目的:避免具体的对象操作,而 new 处理是需要有明确的,new 处理是需要有明确的偶合性。

范例:以接口实例化为例.

package cn.mldn.demo;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.ReentrantLock;
interface IMessage (
public void print() ;
class MLDNMessage implements IMessage {
public void print() {
System.out.println("Www.mldn.cn");
public class MessagesDemo {
public static void main(String[] args) throws Exception

Message msg = new MLDÑMessage();//程序要与具体的子类耦合msg. print();

注:如果说现在一个程序类的代码要进行了耦合处理的话,

那么这个时候就必须清楚的认识到一个问题:

该程序子类使用之中就无法动态更换了,IMessage 只能够使用一个固定的子类。

而如果要使用反射处理的话,那么这个时候就不再受到一个固定类的限制。

package cn.mldn.demo;
interface IMessage {
public void print();
class MLDNMessage implements IMessage fpublic void print() {
System.out.println("Www.mldn. cn");
public class MessagesDemo
public static void main(String[] args) throws Exception {

//字符串意味着可以随意更改,你现在设置了一个新的子类,那么新的子类可以任意更换名称
Class<?> cls = Class.forName("cn. mldn. demo[, MLDNMessage") ;object obj = cls.newInstance();//
直接实例化对象new MLDNMessage();

cls.getMethod("print").invoke(obj) ;//直接反射调用方法

注:反射并不是一个容易被初学者理解的话题,因为如果要想清楚反射的作用,那么必须要求你至少已经学习完了 java.

业务分析设计这门课程,这门课程理解了:

不使用反射处埋;

使用反射处理

 

相关文章
|
4月前
|
安全 Java API
反射的笔记
反射的笔记
27 0
|
存储 Java 索引
反射理解
个人对反射的学习理解与代码
62 0
|
设计模式 安全 Java
一起来学反射(下)
一起来学反射
95 0
|
前端开发 编译器 容器
Java反射->什么是反射?->获取方式
Java反射->什么是反射?->获取方式
Java反射->什么是反射?->获取方式
|
存储 缓存 安全
Java反射进阶—聊聊反射的几个问题
昨天有朋友反映好多反射知识没说到,所以今天算是补充篇,一起看看反射的进阶知识点。
148 0
|
Java C# C++
实战中反射的应用
实战中反射的应用
114 0
实战中反射的应用