大数据——Java反射机制
反射机制
- 认识反射
- 反射机制
- Java反射常用API
- 反射的应用
- 获取类的信息
- 获取Class对象
- 从Class对象获取信息
- 创建对象
- 访问类的属性
- 访问类的方法
认识反射
反射机制
Java的反射机制是Java的特性之一,反射机制是构建框架技术的基础所在。
Java反射机制是指在运行状态中,动态获取信息以及冬天调用对象方法的功能。
Java反射有3个动态性质:
(1)运行时生成对象实例。
(2)运行期间调用方法。
(3)运行时更改属性。
通过Java反射,可以实现以下功能:
(1)在运行时判断任意一个对象所属的类。
(2)在运行时构造任意一个类的对象。
(3)在运行时判断任意一个类所具有的方法和属性。
(4)在运行时调用任意一个对象的方法。
Java反射常用API
使用Java反射技术常用的类如下:
(1)Class类:反射的核心类,反射所有的操作都是围绕该类来生成的,通过Class类,可以获取类的属性、方法等内容信息。
(2)Field类:表示类的属性,可以获取和设置类中属性的值。
(3)Method类:表示类的方法,可以用来获取类中方法的信息,或者执行方法。
(4)Constructor类:表示类的构造方法。
在Java程序中使用反射的基本步骤如下:
(1)导入java.lang.reflect.*。
(2)获得需要操作的类的java.lang.Class对象
(3)调用Class的方法获取Field、Method等对象。
(4)使用反射API进行操作。
反射的应用
获取类的信息
通过反射获取类的信息分为两步,首先获取Class对象,然后通过Class对象获取信息。
获取Class对象
每个类被加载后,系统就会为该类生成一个对应的Class对象,通过该Class对象就可以访问Java虚拟机加中的这个类。Java程序中获得Class对象通常有如下3中方式:
(1)调用对象的getClass()方法
getClass()方法是java.lang.Object类中的一个方法,所有的Java对象都可以调用该方法,该方法会返回该对象所属类对应的Class对象。使用方式如以下代码所示:
Student p=new Student()://Student为自定义的学生类型
Class cla=p.getClass();//cla为class对象
(2)调用类的class属性
调用某个类的class属性可获取该类对应的Class对象,这种方式需要在编译期期间就知道类的名称。使用的方式如以下代码所示:
Class cla=Student.class;//Student为自定义的学生类型
上述代码中,Student.class将会返回Student类对应的Class对象。
(3)使用Class类的forName()静态方法
使用Class类的forName()静态方法也可以获取该类对应的Class对象。该方法需要传入字符串参数,该字符串参数的值是某个类的全名,既要在类名前添加完整的包名。
Class cla=Class.forName("com.pb.jadv.reflection.Student");//正确
Class cla=Class.forName("Student")//错误
在上述代码中,如果传入的字符串不是类的全名,就会抛出一个ClassNotFoundException异常。
从Class对象获取信息
在获得了某个类所对应的Class对象之后,程序就可以调用Class对象的方法来获取该类的详细信息。Class类提供了大量实例方法来获取Class对象所对应类的详细信息。
(1)访问Class对应的类所包含的构造方法
访问Class对应的类所包含的构造方法的常用方法如下所示:
方法 | 说明 |
---|---|
Constructor getConstructor(Class[] params) | 返回此Class对象所包含的类的指定的public构造方法,params参数是按声明顺序指定该方法参数类型的Class对象的一个数组。构造方法的参数类型与params所指定的参数类型匹配 |
Constructor[] getConstructors() | 返回此Class对象所包含的类的所有public构造方法 |
Constructor getDeclaredConstructor(Class[] params) | 返回此Class对象所包含的类的指定构造方法,与构造方法的访问级别无关 |
Constructor[] getDeclaredConstructort() | 返回此Class对象所包含的类的所有构造方法,与构造方法的访问级别无关 |
(2)访问Class对应的类所包含的方法
访问Class对应的类所包含的方法的常用方法如下所示:
方法 | 说明 |
---|---|
Method getMethod(String name,Class[] params) | 返回此Class对象所包含的类的指定的public方法,name参数用于指定方法名称,params参数时按声明顺序标志该方法参数类型的Class对象的一个数组 |
Method[] getMethod() | 返回此Class对象所包含的类的所有public方法 |
Method getDeclaredMethod(String name,Class[]params) | 返回此Class对象所包含的类的指定方法,与方法的访问级别无关 |
Method[] getDeclaredMethod() | 返回此Class对象所包含的类的全部方法,与方法的访问级别无关 |
(3)访问Class对应的类所包含的属性
访问Class对应的类所包含的属性的常用方法如下所示:
方法 | 说明 |
---|---|
Field getField(String name) | 返回此Class对象所包含的类的指定的public属性,name参数用于指定属性名称 |
Field[] getFields() | 返回此Class对象所包含的类的所有public属性 |
Field getDeclareField(String name) | 回此Class对象所包含的类的指定属性,与属性的访问级别无关,name表示属性名称 |
Field getDeclareFields() | 回此Class对象所包含的类的全部属性,与属性的访问级别无关 |
Class对象可以获得该类里的成员、包括方法、构造方法及属性。其中方法由Method对象表示,构造方法由Constructor对象表示,属性由Field表示。
Method、Constructor、Field这3个类都定义值java.lang.reflect包下,并实现了java.lang.reflect.Member接口,程序可以通过Method对象来执行对应的方法,通过Constructor对象来调用相应的构造方法创建对象,通过Field对象直接访问并修改对象的属性值。
创建对象
通过反射来创建对象有如下两种方式:
(1)使用Class对象的newInstance()方法创建对象
(2)使用Constructor对象创建对象。
使用Class对象的newInstance()方法来创建该Class对象对应类的实例,这种方式要求该Class对象的对应类有默认构造方法,而执行newInstance()方法时实际上是利用默认构造方法来创建该类的实例。而使用Constructor对象创建对象,要先使用Class对象获取指定的Constructor对象,再调用Constructor对象的newInstance()方法创建该Class对象对应类的实例。通过这种方式可以选择使用某个类的指定构造方法来创建实例。
如果创建Java对象时不是利用默认构造方法,而是使用指定的构造方法,则可以利用Constructor对象,每个Constructor对应一个构造方法。指定构造方法创建Java对象需要如下3个步骤:
(1)获取该类的Class对象。
(2)利用Class对象的getConstructor()方法来获取指定构造方法。
(3)调用Constructor的newInstance()方法创建Java对象。
访问类的属性
使用Field对象可以获取对象的属性。通过Field对象可以对属性进行取值或赋值操作。
最主要的方法:
setAccessible(true)//对获取到的属性设置访问权限。参数为true,可以对私有属性取值和赋值。
访问类的方法
使用Method对象可以调用对象的方法。在Method类中包含一个invoke()方法,方法定义如下:
Objecet invoke(Object obj,Object args)
其中obj是执行该方法的对象,args是执行该方法时传入该方法的参数。
示例一:
import java.lang.reflect.Constructor;
public class TestConstructor {public static void main(String[] args) throws Exception{Class<Student> c = Student.class;Constructor<Student> sClass =c.getDeclaredConstructor(int.class,String.class, String.class);sClass.setAccessible(true);Student s = sClass.newInstance(2, "马爸爸", "爹");System.out.println(s);}
}
输出结果:
示例二:
import java.lang.reflect.Method;
public class TestMethod {public static void main(String[] args)throws Exception {Student s = TestStudent.getStudent();//构造对象Class<Student> c = Student.class;Method setStuId = c.getDeclaredMethod("setStuId", int.class);//获取方法setStuId.setAccessible(true);//权限setStuId.invoke(s, 3);//指定对象传入参数Method getStudId = c.getDeclaredMethod("getStuId");getStudId.setAccessible(true);Object stuId = getStudId.invoke(s);System.out.println(s);System.out.println(stuId);}
}
输出结果:
示例三:
import java.lang.reflect.Field;//获取属性
public class TestField {public static void main(String[] args) throws Exception{Student s = TestStudent.getStudent();Class<Student> c = Student.class;Field stuId = c.getField("stuId");stuId.set(s, 11);Field stuName = c.getDeclaredField("stuName");stuName.setAccessible(true);stuName.set(s,"泡腾片");Field[] fields = c.getDeclaredFields();for (Field field : fields) {field.setAccessible(true);System.out.println(field.get(s));}System.out.println(s);}
}
输出结果:
示例四:
public class Student {public int stuId;private String stuName;String gender;private Student(){}public Student(int stuId, String stuName, String gender) {this.stuId = stuId;this.stuName = stuName;this.gender = gender;}private int getStuId() {return stuId;}private void setStuId(int stuId) {this.stuId = stuId;}public String getStuName() {return stuName;}public void setStuName(String stuName) {this.stuName = stuName;}public String getGender() {return gender;}@Overridepublic String toString() {return "Student{" +"stuId=" + stuId +", stuName='" + stuName + '\'' +", gender='" + gender + '\'' +'}';}public void setGender(String gender) {this.gender = gender;}
}
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
public class TestStudent<T> {public static void main(String[] args) throws Exception {TestStudent s = new TestStudent();
// //获取类对象的另一种方法
// //① Class<? extends TestStudent> sC = s.getClass();
// //1、获取类对象
// Class<Student> stu=Student.class;
// //② Class ss = Class.forName("cn.kgc.kb09.Student");
// //2、通过对象获取构造方法
// Constructor<Student> constructor = stu.getDeclaredConstructor();
// constructor.setAccessible(true);
// //3、通过构造方法创建对象
// Student student = constructor.newInstance();//Student student =getStudent();TestStudent ts = new TestStudent();Student student=(Student) ts.getObject(Student.class);
// student.stuId = 1;
// student.gender = "男";
// student.setStuName("王思聪");System.out.println(student);}//public T getObject(String classPath){public T getObject(Class<T> tClass){T t=null;try {// Class<T> tClass = (Class<T>) Class.forName(classPath);Constructor<T> c = tClass.getDeclaredConstructor();c.setAccessible(true);t = c.newInstance();
// } catch (ClassNotFoundException e) {
// e.printStackTrace();} catch (NoSuchMethodException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();} catch (InstantiationException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();}return t;}public static Student getStudent(){Class<Student> s = Student.class;Student stu=null;try {Constructor<Student> c = s.getDeclaredConstructor();c.setAccessible(true);stu = c.newInstance();} catch (NoSuchMethodException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();} catch (InstantiationException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();}return stu;}
}
输出结果:
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- CCS-CSP 2013-12 批次 题目5 I’m stuck!
题目描述 问题描述 给定一个R行C列的地图,地图的每一个方格可能是’#’, ‘+’, ‘-’, ‘|’, ‘.’, ‘S’, ‘T’七个字符中的一个,分别表示如下意思:‘#’: 任何时候玩家都不能移动到此方格;‘+’: 当玩家到达这一方格后,下一步可以向上下左右四个方向相邻的任意一个非…...
2024/4/29 10:48:25 - 3.LeetCode.142. Linked List Cycle II
链表求环【142】(medium) #include <iostream> #include <set> using namespace std;struct ListNode {int val;ListNode *next;ListNode(int x) : val(x), next(NULL) {} };class Solution {public:ListNode *detectCycle(ListNode *head) {// 方法二、Floyd Cycl…...
2024/4/29 2:28:46 - MySQL免安装版的安装配置详细教程
MySQL官网下载 将下载的 mysql-5.7.22-winx64.zip ,解压到 D:\mysql-5.7.22-winx64 在D:\mysql-5.7.22-winx64目录下新建my.ini,写入如下代码:(注意更改自己的在D:\mysql-5.7.22-winx64)[mysqld] # 设置mysql的安装目录 basedir=D:\mysql-5.7.22-winx64 # 设置mysql数据库…...
2024/4/28 23:44:40 - 如何选择企业即时通讯软件?
如何选择企业即时通讯软件? 第一点因素是安全性 对企业而言,信息通讯的安全性是首要的,它随时都与企业的经济利益紧密相连。企业即时通讯软件所在服务器的稳定、安全以及私密性是不少企业考虑的首要因素之一。 第二点因素是移动性 随着手机逐渐弥补了电脑在移动办公方面的不…...
2024/4/29 10:48:17 - 剑指offer面试题7:
在完成这一道题前,先自己手写了树结构,前中后序遍历的递归与非递归的实现,代码如下: public class MyBiTree<E> {private Node<E> root = null;public MyBiTree(){}public MyBiTree(E value) {root = new Node<E>(value);}public Node<E> getRoot(…...
2024/4/29 10:48:13 - 蓝桥杯 18省赛 A7 三体攻击(翻译数学公式)
蓝桥杯 18省赛 A7 三体攻击(翻译数学公式) 标题:三体攻击 【题目描述】 三体人将对地球发起攻击。为了抵御攻击,地球人派出了 A B C 艘战舰,在太空中排成一个 A 层 B 行 C 列的立方体。其中,第 i 层第 j 行第 k 列的战舰(记为战舰 (i, j, k))的生命值为 d(i, j,…...
2024/5/7 10:21:58 - JVM整体结构及内存模型
文章目录作者推荐理由一、JVM整体结构及内存模型二、JVM内存参数设置三、日均百万级订单交易系统如何设置JVM参数 作者 MRO项目 吴华辉 推荐理由 在我们的开发中,会不可避免的遇到的,性能问题。因为JVM的内存是有限的,当加载进内存的对象越来越多,就会影响JVM的运行。学习J…...
2024/5/7 9:30:24 - EasyExcel触坑
新版jar问题 本机测试是ok的,放到生产环境会报空指针,建议降级处理,使用以前的方法思路来源于 https://blog.csdn.net/wujize/article/details/104921245...
2024/5/6 19:30:29 - python docx模块读取word表格遇到合并单元格时的处理
python docx模块读取word表 遇到合并单元格时的处理 通过docx模块,读取word里面表格,并进行修改。 现在我遇到的表格是这样:里面行,列均有合并单元格的情况,为了正确读取到位置,用下面代码做了个试验,判断每个单元格的行列号。 from docx import Documentif __name__ ==…...
2024/5/5 7:24:21 - Object.defineProperty是如何实现对数组的监听
关注微信公众号[码不停息]解锁更多优质文章😊Object.defineProperty简单了解定义Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。一脸懵逼中…语法Object.defineProperty(obj, prop, descriptor)obj 要定义属性…...
2024/5/7 4:54:21 - linux环境下nginx相关命令
1、Linux环境下确定Nginx是以那个config文件启动的: [root@localhost ~]# ps -ef | grep nginx root 21196 1 0 23:40 ? 00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf nginx 21197 21196 0 23:40 ? 00:00:00 nginx: worker process root 21199…...
2024/4/29 10:47:50 - 《男孩的心中执念》
我有一友人,他和我认识多年,我很了解他为人,性格方面比较内向,也从来不会主动跟人家搭话,除非是对很要好的朋友,才会说个不停。 依稀的记得,在初中时期,他在很孤单的时候,遇见了一个人,这个人对于他来说,很重要,对于旁人来说,这也很让人羡慕不已,那男孩从初一一直…...
2024/4/28 20:44:10 - Web前端学多久能参加工作呢?
现在是互联网的时代,很多小程序和小视频新兴崛起,从而市场环境开始越来越需要前端程序研发,大多数的人看到了市场的发展方向,想走进前端行业的大门。也有部分人纠结,为什么想要学习前端?怎么学习的?大家学习的方式很多,很多人会纠结是自学还是培训学习。Web前端要学些多…...
2024/4/29 10:47:42 - 最近正在理解java的一些基础算法的东西
我会经常更新一些自己学习过程中写的东西,建议多dbg观察一下数据每次循环的变化,这样才能加深理解。好好学习!public class TestMath {public static void main(String[] args) {int arry[] = {12, 43, 12, 65, 12, 65, 12, 88, 3, 98, 1};// System.out.println(binserch(a…...
2024/4/29 10:47:38 - Codeforces Round #662 (Div. 2)
题目:A. Rainbow Dash, Fluttershy and Chess Coloring 轮流染色,相邻的格子不能相同颜色。手写一下4,5可知。 #include<cmath> #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<cstdlib> #include&…...
2024/4/29 10:47:34 - Mybatis Plus 逻辑删除
逻辑删除的意思就是只是在逻辑上删除了,在数据库里它还是存在的只是被打上了删除标记。步骤1: 引入Mybatis Plus 3.3.0 的依赖<!--MYBATISPLUS啟動器--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter<…...
2024/5/6 1:43:27 - websocket的简单使用
1、maven项目,第一步需要配置jar包<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency>2、前台使用var websocket = null;//判断当前浏览器是否支持WebSocket…...
2024/4/28 13:46:05 - jdk安装包括简单的环境配置
1、如果需要jdk最新版本,可以去官方网站下载,需要注意与电脑本身的位数配套 2、如果需要jdk1.8 64位 链接: https://pan.baidu.com/s/1CCrovhI6MzAAzhnfVmDhLA 提取码: 5qa4 注:安装的时候的存储路径建议直接把默认路径中的 C:\Program Files\Java\jdk1.8.0_152改成D:\Progr…...
2024/4/29 10:47:21 - Apache防盗链和隐藏版本信息实验
Apache防盗链和隐藏版本信息 实验步骤[root@promote ~]# hostnamectl set-hostname kgc [root@promote ~]# su ][root@kgc ~]# iptables -F [root@kgc ~]# setenforce 0 [root@kgc ~]# yum install bind -y [root@kgc ~]# vim /etc/named.conf[root@kgc ~]# vim /etc/named.rfc…...
2024/4/29 7:51:13 - 模板引擎实时生效
开发期间模板引擎要实时生效 1.禁用模板引擎的缓存 # 禁用缓存 spring.thymeleaf.cache=false 2.页面完成以后 ctrl + F9 重新编译...
2024/4/29 10:47:14
最新文章
- 使用LMDeploy部署和量化Llama 3模型
## 引言 在人工智能领域,大型语言模型(LLMs)正变得越来越重要,它们在各种自然语言处理任务中发挥着关键作用。Llama 3是近期发布的一款具有8B和70B参数量的模型,它在性能和效率方面都取得了显著的进步。为了简化Llama …...
2024/5/7 11:46:50 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - RP2040开发笔记
RP2040 采用合宙的RP2040(板载4MB Flash), 所有开发资料参考官方:树莓派 Pico 中文站...
2024/5/5 23:13:56 - RabbitMQ安装及使用笔记
RabbitMQ安装及使用笔记 RabbitMQ是一个开源的消息代理软件,它实现了高级消息队列协议(AMQP),用于在分布式系统中进行消息传递。 1.安装 利用docker load命令加载mq镜像 docker load -i mq.tar 基于Docker来安装RabbitMQÿ…...
2024/5/5 8:27:31 - 416. 分割等和子集问题(动态规划)
题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义:dp[i][j]表示当背包容量为j,用前i个物品是否正好可以将背包填满ÿ…...
2024/5/6 18:23:10 - 【Java】ExcelWriter自适应宽度工具类(支持中文)
工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...
2024/5/6 18:40:38 - Spring cloud负载均衡@LoadBalanced LoadBalancerClient
LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon,直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件,我们讨论Spring负载均衡以Spring Cloud2020之后版本为主,学习Spring Cloud LoadBalance,暂不讨论Ribbon…...
2024/5/6 23:37:19 - TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案
一、背景需求分析 在工业产业园、化工园或生产制造园区中,周界防范意义重大,对园区的安全起到重要的作用。常规的安防方式是采用人员巡查,人力投入成本大而且效率低。周界一旦被破坏或入侵,会影响园区人员和资产安全,…...
2024/5/6 7:24:07 - VB.net WebBrowser网页元素抓取分析方法
在用WebBrowser编程实现网页操作自动化时,常要分析网页Html,例如网页在加载数据时,常会显示“系统处理中,请稍候..”,我们需要在数据加载完成后才能继续下一步操作,如何抓取这个信息的网页html元素变化&…...
2024/5/7 0:32:52 - 【Objective-C】Objective-C汇总
方法定义 参考:https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...
2024/5/6 6:01:13 - 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】
👨💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】🌏题目描述🌏输入格…...
2024/5/6 7:24:06 - 【ES6.0】- 扩展运算符(...)
【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数࿰…...
2024/5/7 1:54:46 - 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?
文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕,各大品牌纷纷晒出优异的成绩单,摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称,在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁,多个平台数据都表现出极度异常…...
2024/5/6 20:04:22 - Go语言常用命令详解(二)
文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令,这些命令可以帮助您在Go开发中进行编译、测试、运行和…...
2024/5/7 0:32:51 - 用欧拉路径判断图同构推出reverse合法性:1116T4
http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b,我们在 a i a_i ai 和 a i 1 a_{i1} ai1 之间连边, b b b 同理,则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然࿰…...
2024/5/6 7:24:04 - 【NGINX--1】基础知识
1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息,并安装一些有助于配置官方 NGINX 软件包仓库的软件包: apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...
2024/5/6 7:24:04 - Hive默认分割符、存储格式与数据压缩
目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限(ROW FORMAT)配置标准HQL为: ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...
2024/5/6 19:38:16 - 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法
文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中,传感器和控制器产生大量周…...
2024/5/6 7:24:03 - --max-old-space-size=8192报错
vue项目运行时,如果经常运行慢,崩溃停止服务,报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中,通过JavaScript使用内存时只能使用部分内存(64位系统&…...
2024/5/7 0:32:49 - 基于深度学习的恶意软件检测
恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞,例如可以被劫持的合法软件(例如浏览器或 Web 应用程序插件)中的错误。 恶意软件渗透可能会造成灾难性的后果,包括数据被盗、勒索或网…...
2024/5/6 21:25:34 - JS原型对象prototype
让我简单的为大家介绍一下原型对象prototype吧! 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象,所以我们也称为原型对象…...
2024/5/7 11:08:22 - C++中只能有一个实例的单例类
C中只能有一个实例的单例类 前面讨论的 President 类很不错,但存在一个缺陷:无法禁止通过实例化多个对象来创建多名总统: President One, Two, Three; 由于复制构造函数是私有的,其中每个对象都是不可复制的,但您的目…...
2024/5/7 7:26:29 - python django 小程序图书借阅源码
开发工具: PyCharm,mysql5.7,微信开发者工具 技术说明: python django html 小程序 功能介绍: 用户端: 登录注册(含授权登录) 首页显示搜索图书,轮播图࿰…...
2024/5/7 0:32:47 - 电子学会C/C++编程等级考试2022年03月(一级)真题解析
C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...
2024/5/6 16:50:57 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57