文档库 最新最全的文档下载
当前位置:文档库 › Day1--反射,注解

Day1--反射,注解

Day1--反射,注解
Day1--反射,注解

从JDK5.0后,Sun在java新增一些特性来简化开发,本文主要介绍以下的几个特性:●静态导入import static https://www.wendangku.net/doc/fb17036911.html,ng.Math.*;

●自动装包/拆包int I = Integer+1;

●可变参数int a(int…b)

●Annotation Retention(RetentionPolicy.RUNTIME) ,Target(ElementType.Methods) ●增强for循环for()

●泛型List list = new ArrayList();

●枚举猪没劲,才可蒸饭

定义包名的时候,包名中不允许有java关健字。

我们要说的是:内部类里面的成员变量是不能定义成static的。

如果我们在new一个对象时,你在其后面加了一个大括号,那说明new出来的对象是

它的子类。如:new Date() {};这是一个匿名的类,它是date类的子类对象,所以一些抽象方法我们就得将其一一实现。而且,这个类的子类也会产生一个class文件,名字为: 父类名$1.class 父类名$2.class。如:TestInnerClass$1.class

下面是一个enum类的例子,看下就知道了。

public class EnumDemo {

public static void main(String[] args) {

TrafficLamp tr = TrafficLamp.BLUE;

System.out.println(tr.next().time);

}

/**

* 这是一个emun类。

*

* @author Administrator

*

*/

enum TrafficLamp {

RED(10){

@Override

public TrafficLamp turn() {

return BLUE;

}}, BLUE(20){

@Override

public TrafficLamp turn() {

return YELL;

}}, YELL(30){

@Override

public TrafficLamp turn() {

return RED;

}};

int time;

public TrafficLamp next() {

if (https://www.wendangku.net/doc/fb17036911.html,().equals("RED")) {

return BLUE;

} else if (https://www.wendangku.net/doc/fb17036911.html,().equals("BLUE")) {

return YELL;

} else

return RED;

}

private TrafficLamp() {

}

private TrafficLamp(int time) {

this.time = time;

}

public abstract TrafficLamp turn();

}

}

---------------------------------------类加载问题

Class clazz1 = java.util.Date.class;//将date类加载到内存中

Class clazz2 = new Date().getClass();//这次就不用在进行加载了。

Class clazz3 = Class.forName("java.util.Date");//这里也不用再加载了。

从上面我们可以看的出当我们第一次将java.util.Date加载到内存中以后,以后就不用加载了,以

后的都指向那个date字节码,所以“对于forName来说,它先在内存中进行查找字节码文件,如果内存中存在,就直接指向它,如果不存在,再跟据相应的字符串,在classPath下查找相应的字节码文件,如果还是找不到,就会抛出ClassNotFoundException”.所以以上三个变量指向同一份内存。Class对象不是在编译时就存在,是在运行时才存在的。

获取一个类的Class对象有以下三种方法:

(1)通过Class类的forName静态方法

(2)调用某个类的class属性

(3)通过某个对象的getClass()方法

反射

得到构造方法

Class clazz = String.class;

Constructor constructor = clazz.getConstructor(StringBuffer.class);

String str = (String)constructor.newInstance(new StringBuffer("abc"));

System.out.println(str);

Method method = clazz.getMethod("charAt",int.class);

System.out.println(method.invoke(str, 2));

这里我们说,通过clazz的getConstructor(StringBuffer.class) 通过它来得到string的带stringBuffer参数的构造方法。

通过源代码,由于class用到了缓存,所以进行反射时很消耗系统资源。

--------------------------------------得到field

如果我们的类的field是public,我们可以直接通过getField来得到其Field,如:

Class clazz = ReflectPoint.class;

Field fieldx = clazz.getField("y");

而如果我们类的field是private,那们我们应该通过clazz.getDeclaredField("y"),然后设置其访问

权限,这样就行了。

Field fieldy = clazz.getDeclaredField("y");

fieldy.setAccessible(true);

int s = (Integer)fieldy.get(new ReflectPoint(34,665));

System.out.println(s);

下面是我们得到方法并传数组参数执行,在这里,我们就要了解JDK1.4与JDK1.5的区别了,在JDK1.4中,我们还没有出来可变数组,所以它传的是int 1,int 2,int 3,如jishuang(int a,int b,int c),而对于JDK1.5来说,因为有了可变数组,它就变成了这样jishuang(Object...args),这样,如果我们对一个接收数组参数的方法传递一个数组变量,它则会将里面的可变数组转化为一个个单一的数组元素,如,假如我们传jishuang(int..arg),他会变成jishuang(int 1,int 2,int 3),这样就不符合我们的要求了,所以我们应该这样传

mMain.invoke(null,new Object[]{new String[]{"aaa","bbb"}});

mMain.invoke(null,(Object)new String[]{"aaa","bbb"});

这样,第一个就会将new String{"aaa","bbb"};传入到string[]里同

第二个也是一样,因为Object属于String[];

--------------------------------------properties

下面是通过properties来得到类名,并生成对象。

对于值对象

value object----这叫做VO

对于javaBean的属性取法,如果get或set中,去掉get,set后,第二个是小写,那就将第一个字母小写,如:getAge(),那么属性就为age,如果去掉get,set后,第二个字母是大写,那就不变,如setCPU,那么属性就是CPU。

----------------------------------内省

通过属性得到方法,并执行方法。

import java.beans.BeanInfo;

import java.beans.IntrospectionException;

import java.beans.Introspector;

import java.beans.PropertyDescriptor;

import https://www.wendangku.net/doc/fb17036911.html,ng.reflect.InvocationTargetException;

import https://www.wendangku.net/doc/fb17036911.html,ng.reflect.Method;

/**

* 这里通过内省调用javabean的方法,并执行

* @author Administrator

*

*/

public class IntrospectorDemo {

public static void main(String[] args) throws IntrospectionException, Exception, IllegalAccessException, InvocationTargetException {

Person p1 = new Person(20,"wshyj18");

BeanInfo beanInfo = Introspector.getBeanInfo(Person.class);//得到bean的信息

PropertyDescriptor[] property = beanInfo.getPropertyDescriptors();//得到property描述集合

for(PropertyDescriptor pt:property) {

if(pt.getName().equals("username")) {

Method method =pt.getWriteMethod();

method.invoke(p1,"wshyj");

System.out.println(p1.getUsername());

}

}

}

}

从下在可以看出,我们可以通过Introspect的getBeanInfo方法来得到相应的bean信息。然后从bean信息中得到属性信息。

不过以上是返回所有的属性,而有的时候,我只需要某一个属性,那么,我就这样做: PropertyDescriptor pd = new PropertyDescriptor("age",Person.class);

然后我调用pd的getName方法,getWriterMethod方法来得到相应的属性名与方法。

最终我们可以将这抽象出一个方法,这个方法就是

setObjectProperty(Object obj,String property,String value),而这种方法,apach早已经为我们实现,那就是beanUtil包

下面我们用apach为我们提供的beanUtils包来进行对bean的操作。

我们可以通过setProperty(Object bean, String name, Object value)来设置对象的属性,而我们用getProperty(Object bean, String name) 来得到bean对象的属性。不过在使用beanUtils工具包时,我们要导入两个jar文件,一个是commons-beanutils.jar,另外一个是与commons-beanUtils相关联的commons-logging.jar。

而我们也可以使用这个beanUtils包下的另外一个类PropertyUtils.setProperty(Object bean,

String name, Object value)来设定参数,而采用PropertyUtils.getProperty(Object bean, String name) 来得到参数,

其中这两者的区别是:前者接收的参数或返回的参数类型没有固定,是object类型,而后者的参数类型与返回值类型确是固定的。

--------------------------------------------------------java annotation

有些时候,不鼓励程序员使用这样的元素,通常是因为它很危险或存在更好的选择,这时,我们可以将这个类或方法上加一个注解@Deprecated,这样,在编译的时候,编译器就会发出警告子。

而有的时候,如果我们要覆写某一个方法,我们一般在前面加@override,这样的话,如果我们覆写的代码有问题,在编译的时候就会报错。

而有的时候,我们可以将编译时候的警告信息屏蔽,我们可以使用@SuppressWarnings。下面是这三个annotation的实现。

@Target(value={TYPE,FIELD,METHOD,PARAMETER,CONSTRUCTOR,LOCAL_VARIABL E})

@Retention(value=SOURCE)

public @interface SuppressWarnings

@Target(value=METHOD)

@Retention(value=SOURCE)

public @interface Override

Documented

@Retention(value=RUNTIME)

public @interface Deprecated

下面我们来说Target注解,它主要是代表你的注解的作用域,其用法是

@Target({ElementType.TYPE,ElementType.FIELD})这代表它能放的地方,如类,成员变量,局部变量,成员方法,构造方法。

而@Retention(RetentionPolicy.RUNTIME)表示注释要保留多久,如果是Source,那么就保留在源文件中,如果是Class,就保留在字节码中,

而如果是Runtime,就保留到运行,这里所说的保留到运行,是在程序运行的时候,能通过getAnnotation(MyAnnotation.class)能得到的,而如果设为source与class,是无论如何也得不到的。

我们可以自己定义一个annotation,并为其定义成员变量,还可以设定默认值。

@Retention(RetentionPolicy.RUNTIME)

@Target({ElementType.TYPE,ElementType.FIELD})

public @interface MyAnnotation {

public int a();

public int b();

public int c() default 3;

}

成员变量的表示与类中不一样,它多了一个小括号,它当我们的成员变量为value时,而其它的成员变量都有默认的值时,我们可以不用写@MyAnnotation(value="123")

我们可以直接写成@MyAnnotation("123"),因为value是一个特殊变量。默认的时候变量会是value。

如果注释类型声明中不存在Retention 注释,则保留策略默认为RetentionPolicy.CLASS

并且通过annotation能得到你的值,于是就有了后面的在类上面注解了。

java《注解解析》

Java注解(Annotation) (1) Annotation(注释)是JDK5.0及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。注释是以‘@注释名’在代码中存在的,根据注释参数的个数,我们可以将注释分为:标记注释、单值注释、完整注释三类。它们都不会直接影响到程序的语义,只是作为注释(标识)存在,我们可以通过反射机制编程实现对这些元数据的访问。另外,你可以在编译时选择代码里的注释是否只存在于源代码级,或者它也能在class 文件中出现。 元数据的作用 如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类: 编写文档:通过代码里标识的元数据生成文档。 代码分析:通过代码里标识的元数据对代码进行分析。 编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查。 基本内置注释 @Override

Java代码 1. package com.iwtxokhtd.annotation; 2. /** 3. * 测试Override注解 4. * @author Administrator 5. * 6. */ 7. public class OverrideDemoTest { 8. 9. //@Override 10. public String tostring(){ 11. return "测试注释"; 12. } 13. } package com.iwtxokhtd.annotation; /** * 测试Override注解 * @author Administrator * */

ppt注释的使用方法

ppt注释的使用方法 演讲PPT之前不用硬背,演讲时心里不打鼓!轻轻松松看这电脑念,下面的人却看不到,特别有面子!!!设置ppt双屏显示,使讲演者看到备注,而观众看不到,嘿嘿,演讲的时候可以作弊咯!!! 还是自己备一份,不然找起来太费劲了。。 前言:大家在看此篇文章之前心中是不是一直存有一个疑问,那就是office组件中的powerpoint(PPT)制作中的“备注”到底有何作用? 在工作中经常用PPT放映演示给客户进行讲演,也见识过专业讲师和IT销售给我介绍产品,使用的也是 PPT。但是几乎所有人的PPT使用方式还是停留在投影机上放什么,演讲者的laptop上也显示什么,演讲者要么看自己的laptop的屏幕,要么看墙上的投影。“备注”就彻底失去了作用,因为根本看不见。 出于纳闷,我就询问了几个号称是office高手这个问题,“备注”写了是给谁看的,有什么作用? 高手给出的答案竟然是“备注”用来给演讲者回忆讲演思路,或者此PPT给别人的时候别人讲演前可以先了解一下制作此PPT的作者的思路意图。 这些都是PPT的常规用法,或者说并不怎么正确的用法,下面我给大家介绍如何高效的使用PPT进行演讲,并且充分利用“备注”的作用,以期为受众作出最出色的讲解。 下面我就开始了。下面做演示用的PPT涉及某安全厂商,原因是我手头做的比较好的PPT 而且备注写的比较详细的也就这份了,我并没有用于商业用途,我也不是该厂商员工,特别声明。

第一步,在你的laptop的显示属性中进行设置。 如图所示,在连接了外部显示器或者投影仪的情况下,点击“2”号屏幕,并按照图中高亮标注处选中“将windows桌面扩展到该显示器”同时设置适当的分辨率。 单击“应用”,就可以看到如下的效果。

实验一:电磁波反射和折射实验

实验一:电磁波反射和折射实验

电磁场与微波测量第一次实验 ——电磁场与微波测量实验 2017-3-11 院系:电子工程学院 班级:2014211201 组号:7组 组员:梁嘉琪(报告)李婉婷 学号:2014210819 2014210820

实验一:电磁波反射和折射实验 一、实验目的 1、熟悉S426型分光仪的使用方法。 2、掌握分光仪验证电磁波反射定律的方法。 3、掌握分光仪验证电磁波折射定律的方法。 二、实验设备与仪器 S426型分光仪 三、实验原理 电磁波在传播过程中如遇到障碍物,必定要发生反射,本处以一块大的金属板作为障碍物来研究当电磁波以某一入射角投射到此金属板上所遵循的反射定律,即反射线在入射线和通过入射点的法线所决定的平面上,反射线和入射线分居在法线两侧,反射角等于入射角。 验证均匀平面波在无耗媒质中的传播特性;均匀平面波垂直入射理想电解质表面的传播特性。 四、实验内容与步骤 1、熟悉分光仪的结构和调整方法。 2、连接仪器,调整系统。 仪器连接时,两喇叭口面应互相正对,他们各自的轴线应在一条直线上。指示两喇叭的位置

的指针分别指于工作平台的90刻度处,将支座放在工作平台上,并利用平台上的定位销和刻线对正支座(与支座上刻线对齐)拉起平台上四个压紧螺钉旋转一个角度放下,即可压紧支座。 3、测量入射角和反射角 反射金属板放到支座上时,应使金属板平面与支座线面的小圆盘上的某一对刻线一致。而把带支座的金属反射板放到小平台上时,应使圆盘上的这对与金属板平面一致的刻线与小平台上相应90刻度的一对刻线一致。这时小平台上的0刻度就与金属板的法线方向一致。 转动小平台,使固定臂指针指在某一角度处,这角度的读数就是入射角,然后转动活动臂在电流表上找到最大指示处,此时活动臂的指针所指的刻度就是反射角。如果此时表头指示太呆或太小,应调整衰减器、固态振荡器或晶体检波器,使表头指示接近满量程。 4、注意: 做此项实验,入射角最好取30至65度之间。因为入射角太大接受喇叭有可能直接接受入射波。注意系统的调整和周围环境的影响。

古书注释的作用

古书注释的作用: 1.清人和清人以前的注释都属于古人注,简称古注。 2.古注是阅读古书的阶梯和桥梁。 3.古注接近实际,较为可靠。 4.古人注是今人注的源头,是今人注的重要依据。 5.古注有时比查字典更能解决问题 6.古书注释的发展概况: 7.古书注释开创于西汉。两汉注释古书,以解经为目的。 8.今文学派好阐发“微言大义”,注释往往繁琐冗杂。古文学派重文字训诂,简约质朴, 不离经空发,人称“朴学”、“汉学”。 9.毛亨《毛诗诂训传》,郑玄《毛诗笺》、《周礼注》、《仪礼注》、《礼记注》,何休《春秋公 羊传注》等;赵歧《孟子章句》,王逸《楚辞章名》,高诱《战国策注》、《吕氏春秋注》。 10.三国·王肃、韦昭王弼、韩康伯《易注》,杜预《春秋经传集解》,何晏《论语集解》, 裴骃《史记集解》,皇侃《论语义疏》,裴松之《三国志注》,王弼《老子注》,郭象《庄子注》,张湛《列子注》,刘孝标《世说新语注》,郦道元《水经注》;郭璞《尔雅注》、《方言注》 11.隋·刘炫《春秋左氏传述义》、《春秋规过》、《春秋攻昧》 12.唐·注书进一步发展并取得重大成就,是继两汉以后的又一高峰期。 13.孔颖达等人《五经正义》,贾公彦《周礼疏》、《仪礼疏》,徐彦《春秋公羊传疏》,杨 士勋《春秋谷梁传疏》,合称“九经义疏”。唐人义疏代表了唐代注释的最高成就。 14.司马贞《史记索隐》,张守节《史记正义》,颜师古《汉书注》,李贤《后汉书注》,杨倞 《荀子注》,成玄英《庄子疏》,李善《文选注》等。《史记索隐》、《史记正义》与南朝宋裴骃《史记集解》世称“史记三家注”。 古书注释的类型: (一)诂训类以解释词义为主 1.诂、训:侧重于字词、名物解释。诂是以今言释古言,侧重于解释单词的意义;训是对 古代词语作形象性的描绘与说明,侧重于解释由两个相同的单音节词构成的词语(重言),并兼言其比兴意义。 2.传:传述,指传述经文的文义。一般是先释字句,后明经旨。原本指解释儒家六经的书, 后也做一般的注释名称。 3.注:注释的通称。名称大致始于东汉郑玄。 4.笺:对经传简略不明的地方加以补充发挥,对不同见解的地方加以订正。

spring的@Transactional注解详细用法

spring的@Transactional注解详细用法 各位读友大家好!你有你的木棉,我有我的文章,为了你的木棉,应读我的文章!若为比翼双飞鸟,定是人间有情人!若读此篇优秀文,必成天上比翼鸟! spring的@Transactional注解详细用法Spring Framework对事务管理提供了一致的抽象,其特点如下:为不同的事务API 提供一致的编程模型,比如JTA(Java Transaction API), JDBC, Hibernate, JPA(Java Persistence API和JDO(Java Data Objects)支持声明式事务管理,特别是基于注解的声明式事务管理,简单易用提供比其他事务API如JTA更简单的编程式事务管理API与spring数据访问抽象的完美集成事务管理方式spring支持编程式事务管理和声明式事务管理两种方式。编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。声明式事务管理建立在AOP之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代码中掺杂事务管理的代码,只需在配置文件中做相关的事务规则声明(或通过基于@Transactional注解的方式),便可以将事务规则应用到业务逻辑中。显然声明式事务管理要优于编程式事务管理,这正是spring

习题答案 第6章 平面电磁波的反射与折射

第6章 平面电磁波的反射与折射 6.1/ 6.1-1 电场强度振幅为0i E =0.1V/m 的平面波由空气垂直入射于理想导体平面。试求: (a)入射波的电、磁能密度最大值; (b)空气中的电、磁场强度最大值; (c)空气中的电、磁能密度最大值。 [解] (a) 314/10427.4m J w eM -?= 31410427.4m J w m M -?= (b) m V E /2.01= m A H /103.541-?= (c) 313/107708.1m J w eM -?= 313/107708.1m J w m M -?= 6.2/ 6.1-2 均匀平面从空气垂直入射于一介质墙上。在此墙前方测得的电场振幅分布 如题图6-1所示,求: (a)介质墙的)1(=r r με; (b)电磁波频率f 。 [解] (a) 9=r ε (b) M H z Hz f 75105.77 =?= 6.3/ 6.1-3 平面波从空气向理想介质( r μ=1,σ=0)垂直入射,在分界面上0E =16V/m , 0H =0.1061A/m 。试求: (a)理想介质(媒质2)的r ε; (b)i E ,i H ,r E ,r H ,t E ,t H ; (c) 空气中的驻波比S 。 [解] (a) 25.6=r ε (b) ()0010,/2811εμω===--k m V e e E E z jk z jk i i ()m A e e E H z jk z jk i i /0743.0377 28110 --== = η

()()() m A e e H H k k k m V e e E E m A e e E H m V e e RE E z jk z jk t t r z jk z jk t t z jk z jk r r z jk z jk i r /1061.05.2,/16/0318.0377 12) /(122222111101122200 0----+========= = -==εεμωη (c) 5.2429 .01429 .0111=-+= -+= R R S 6.4/ 6.1-4 当均匀平面波由空气向理想介质(1=r μ,σ=0)垂直入射时,有96%的入射功率输入此 介质,试求介质的相对介电常数r ε。 [解] 25.2=r ε 6.5/ 6.1-5频率为30MHz 的平面波从空气向海水(r ε=81,1=r μ,σ=4/S/m )垂直入射。在该频率上 海水可视为良导体。已知入射波电场强度为10mV/m ,试求以下各点的电场强度: (a)空气与海水分界面处; (b)空气中离海面2.5m 处; (c)海水中离海面2.5m 处。 [解] (a) ()m V TE E E i t /1003.4102.440403.02.4442000 ∠--?=?∠=== (b) ( )() ()m mV j E j z k E j e e E e E E i i z jk z jk i z jk z jk i /202sin 2Re 010*******==-=-≈+=∴-- (c ) 2.445.28.215.28.21402100 3.422j j z j z t e e e e e E E ?-?----?==βα () ()m V /)4.198(1064.82.446.312210143.21003.428244 -∠?=+-∠???=--- 6.6/ 6.1-6 10GHz 平面波透过一层玻璃(r ε=9,1=r μ)自室外垂直射入室内,玻璃的厚度为4mm , 室外入射波场强为2V/m ,求室内的场强。 [解] ()951 .0309.0465.0816212144288 144 3j e e e E j j j i +-=?-?= --- ()()m V /6.12957.14.148.31446 -∠=∠-∠= ()()m A E H i i /6.1291016.4377 6.1295 7.130 3 3-∠?=-∠= = -η

java中注解的几大作用

@SuppressWarnings("deprecation")//阻止警告 @HelloAnnotation("当为value属性时,可以省掉属性名和等于号。") public static void main(String[]args)throws Exception{ System.runFinalizersOnExit(true); if(AnnotationTest.class.isAnnotationPresent(HelloAnnotation.class)){ HelloAnnotation helloAnnotation= (HelloAnnotation)AnnotationTest.class.getAnnotation(HelloAnnotation.class); System.out.println("color():"+helloAnnotation.color()); System.out.println("value():"+helloAnnotation.value()); System.out.println("author():"+helloAnnotation.author()); System.out.println("arrayAttr():"+helloAnnotation.arrayAttr().length); System.out.println("annotationAttr():"+helloAnnotation.annotationAttr().value()); System.out.println("classType(): "+helloAnnotation.classType().newInstance().sayHello("hello,ketty")); } } @Deprecated//自定义:备注过时的方法信息 public static void sayHello(){ System.out.println("hello,world"); } }

java注解详解

注解(Annotation)简介 Annotation(注解)是JDK5.0及以后版本引入的一个特性。注解是java的一个新的类型(与接口很相似),它与类、接口、枚举是在同一个层次,它们都称作为java的一个类型(TYPE)。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。它的作用非常的多,例如:进行编译检查、生成说明文档、代码分析等。 JDK提供的几个基本注解 a.@SuppressWarnings 该注解的作用是阻止编译器发出某些警告信息。 它可以有以下参数: deprecation:过时的类或方法警告。 unchecked:执行了未检查的转换时警告。 fallthrough:当Switch程序块直接通往下一种情况而没有Break时的警告。 path:在类路径、源文件路径等中有不存在的路径时的警告。 serial:当在可序列化的类上缺少serialVersionUID定义时的警告。 finally:任何finally子句不能完成时的警告。 all:关于以上所有情况的警告。 b.@Deprecated 该注解的作用是标记某个过时的类或方法。 c.@Override 该注解用在方法前面,用来标识该方法是重写父类的某个方法。 元注解 a.@Retention 它是被定义在一个注解类的前面,用来说明该注解的生命周期。 它有以下参数: RetentionPolicy.SOURCE:指定注解只保留在一个源文件当中。 RetentionPolicy.CLASS:指定注解只保留在一个class文件中。 RetentionPolicy.RUNTIME:指定注解可以保留在程序运行期间。 b.@Target 它是被定义在一个注解类的前面,用来说明该注解可以被声明在哪些元素前。 它有以下参数: ElementType.TYPE:说明该注解只能被声明在一个类前。 ElementType.FIELD:说明该注解只能被声明在一个类的字段前。 ElementType.METHOD:说明该注解只能被声明在一个类的方法前。 ElementType.PARAMETER:说明该注解只能被声明在一个方法参数前。

java中有三种书写注释的方式

在java中有三种书写注释的方式:“//...”、“/*...*/”、“/**...*/”。(不带双引号“”,...代表被注释 的内容) 1、“//” 这是一种最常使用的方式,此种注释只注释一行,即“//”所在行,也就是“//”后面的内容。在 本行注释,有这么几个作用(本人心得啊): 一、方便自己查看:在下次看到代码后,自己可以更加快速的理解这句代码和所在代码块中的作用,以及对上下代码也更容易理解,而不用再一句一句的阅读源代码,从而节省很多时间。 二、方便其他人阅读:如果没有在必要的代码后面加上注释,别人就要把源代码的每一句都要阅读,不利于别人的阅读和其他程序员继续自己未完成的工作。 三、还有一点就是,加上一些注释,显得比较专业。(有些题外话了,不过看着确实如此) 如: [java]view plaincopyprint? 1.System.out.println("Hello World"); //打印字符串“Hello World” 2、“/*...*/” 对于一些较长的注释,也可以用”//“,但是这样就显得很麻烦,所以可以使用” /*...*/ “了,它用于注释若干行。比如说,在编写了很长一段代码后,编译运行后有很多错误出现,一查看,发现某个代码块有问题,这时候,你就可以将这段代码块注释掉,运行后发现问题解决了。这段注释掉的代码就可以用” /*...*/ “来注释。或者你需要在一段代码前写明这段代码的作用及方法等,也可以用” /*...*/ “ 如: [java]view plaincopyprint? 1./* 2.查找数组中的元素 3.折半法:前提是数组是按大小顺序排列好的, 4.用查找的值和中间值比较,大则和下一半中间值比依次,小则和上一半中间值比,找 到则返回。 5.小值的编号在左移或大值的编号在右移。判断是否大小值的编号相遇,若未找到,则 不再循环,返回-1 6. */ 7.public static int FindArry1(int[] arr,int key) 8. { 9.int min,max,mid; 10. min = 0; 11. max = arr.length-1; 12. mid = (min + max)/2;

电磁波反射与折射的研究(试题学习)

电磁波反射和折射的研究 一. 实验目的 1. 研究电磁波在良导体表面的反射; 2. 研究电磁波在良介质表面的反射和折射; 3. 研究电磁波全反射和全折射的条件。 二. 实验原理: 1.电磁波斜入射到不同介质分界面上的反射和折射 如图1所示, 平行极化的均匀平面波以角度θ 入射到良介质表面时,入射波、反射波和折射波可用下列式子表示为 图1. 平行极化波的斜入射示意图 入射波: ) cos sin (m 1)sin cos (θθθθz x jk z x e E +-+ +-=a a E )cos sin (1 m 1θθηz x jk y e E +-++ =a H 反射波: ) cos sin (m //1)sin cos (θθθθ'-'-+ -'-'-=z x jk z x e E R a a E )cos sin (1 m //1θθη'-'-+ - =z x jk y e E R a H 折射波: ) cos sin (m //t 2)sin cos (θθθθ''+''-+ ''-''=z x jk z x e E T a a E )cos sin (2 m //t 2θθη''+''-+=z x jk y e E T a H E + E t ⊙ ⊙ ⊙ E - θ '' θ ' θ z x H + H - H t

式中, 2221112 2 2111 , , ,εμωεμωεμηεμη==== k k 利用分界面上(z = 0)电场和磁场切向分量连续的边界条件,可得斯耐尔反射定律: θθ'= 和斯耐尔折射定律: 2 1 2 21 12 1 021sin sin εεεμεμθθμμμ时=== = =''k k 并计算出平行极化波的反射系数R //和折射系数T //: θηθηθηθη' '+' '-= cos cos cos cos 2121//R θηθηθ η' '+= cos cos cos 2212//T 类似地,可求出垂直极化波的反射系数和折射系数: θηθηθηθη' '+' '-= ⊥cos cos cos cos 1212R θηθηθ η' '+=⊥cos cos cos 2122T 2.全折射发生的条件: 全折射也即没有反射波,发生全折射的条件可通过令反射系数为零得到。 (1) 对平行极化情形,令0//=R ,可得全折射时的入射角: 1 2 1 2 121 P tan sin εεεεεθθ--=+== 该入射角称为布儒斯特角。可以证明,此时的折射角P 90θθ-?=''。可见,若电磁波以角度θP 入射到厚度为d 的介质板表面,则 2 11P cos sin εεεθθ+= ='' 这正是电磁波由ε2到ε1的全折射条件。因此,当电磁波以布儒斯特角从介质板的一侧入射时,在介质板的另一侧可接收到全部信号。如图2所示。 对垂直极化波,类似的推导结果表明,其不会发生全折射现象。

古书注解的基本方式

《古书注解的基本方法主要有》 注解体例的名称:传:秦汉之际,把《周易》、《尚书》、《诗经》、《礼记》、《乐记》、《春秋》称作“经”,把解释经书的叫作“传”。“传”就是对“经”的解说。正义:解释经 传而得义之正者称为“正义”,“注“、”疏“有时也可称为“正义”。疏:“疏”是相对“注”而言的,在注的基础上再进一步作注就叫作“疏”。“疏”是对注的解释。笺:“笺”本来是对传的阐发和补充,后来只指注解的意思。注:“注”指对古书的注解,狭义的“注”只指注解,而广义的 则包括传、笺等。章句:解说古书的一种方法,除解释字词外,还串讲文章大意。集解:选取各家注解通释经传的叫“集解”。注解术语的作用一曰,为,谓之这三个术语的作用相同,它们不仅用来释义,并且用来分别同义词和近义词之间的细微差别。二谓用“谓”的时候,被解释的词放在“谓”的前面。“谓”的作用是用后面的话说明前面词语所指的范围或比、影射的事物。三貌,之貌这两个术语一般用在动词或形容词的后面,说明被释的词是表 示事物某种性质或某种状态的。四犹,犹言“犹”的作用是表示注释与被释词语的意义并不完全相同,只是近似。用“犹”的时候,往往是用近义词作注,或者是用引申义训释本义。 五之言,之为言,之犹言这三个术语的作用是表示“声训”,注释时必然是用声音相同或近 似的词来作训解。六读为,读曰,读若,读如这几个术语都是用来注明音读的,“读为”和“读曰”一般是用本字来说明假借字。古书注解的基本体例主要有三类:①传注体:是经汉代学者奠基的以解释先秦文献词句为主的一种体例。②义疏体:是既释经文又兼释注文的一种体例。③集解体:是汇集众说的一种体例。古书注解的基本方法主要有四种:①释词;②通句;③疏释全章大意;④评说。

实验一:电磁波反射和折射实验

电磁场与微波测量第一次实验 ——电磁场与微波测量实验 2017-3-11 院系:电子工程学院 班级:2014211201 组号:7组 组员:梁嘉琪(报告)李婉婷 学号:2014210819 2014210820

实验一:电磁波反射和折射实验 一、实验目的 1、熟悉S426型分光仪的使用方法。 2、掌握分光仪验证电磁波反射定律的方法。 3、掌握分光仪验证电磁波折射定律的方法。 二、实验设备与仪器 S426型分光仪 三、实验原理 电磁波在传播过程中如遇到障碍物,必定要发生反射,本处以一块大的金属板作为障碍物来研究当电磁波以某一入射角投射到此金属板上所遵循的反射定律,即反射线在入射线和通过入射点的法线所决定的平面上,反射线和入射线分居在法线两侧,反射角等于入射角。验证均匀平面波在无耗媒质中的传播特性;均匀平面波垂直入射理想电解质表面的传播特性。 四、实验内容与步骤 1、熟悉分光仪的结构和调整方法。 2、连接仪器,调整系统。 仪器连接时,两喇叭口面应互相正对,他们各自的轴线应在一条直线上。指示两喇叭的位置的指针分别指于工作平台的90刻度处,将支座放在工作平台上,并利用平台上的定位销和刻线对正支座(与支座上刻线对齐)拉起平台上四个压紧螺钉旋转一个角度放下,即可

压紧支座。 3、测量入射角和反射角 反射金属板放到支座上时,应使金属板平面与支座线面的小圆盘上的某一对刻线一致。而把带支座的金属反射板放到小平台上时,应使圆盘上的这对与金属板平面一致的刻线与小平台上相应90刻度的一对刻线一致。这时小平台上的0刻度就与金属板的法线方向一致。转动小平台,使固定臂指针指在某一角度处,这角度的读数就是入射角,然后转动活动臂在电流表上找到最大指示处,此时活动臂的指针所指的刻度就是反射角。如果此时表头指示太呆或太小,应调整衰减器、固态振荡器或晶体检波器,使表头指示接近满量程。 4、注意: 做此项实验,入射角最好取30至65度之间。因为入射角太大接受喇叭有可能直接接受入射波。注意系统的调整和周围环境的影响。 五、实验数据与处理: 1. 金属板实验: 结论:入射角越大,入射角和反射角绝对差值越小。接受信号越强,受影响越小。 2. 观察介质板(玻璃板)上的反射和折射实验: 实验数据及处理如下表: 总电流(56μA)

Digital Micrograph功能及使用教程

Digital Micrograph功能及使用教程 你是否还在为看到.dm3格式文件而发愁?! 你是否还在为TEM图像而不知所措?! 那么请搬好小板凳,听老司机为你一一道来~~ 请自带干粮,因为真的很长~,很长~ 在电子显微学界Gatan DigitalMicrograph (DM)是一个为人皆知的软件。DM 具有采集图像,图像处理和分析,数据管理和报告打印等多种功能。希望以此能够将大家带进门,以便日后自学提高对DM软件的理解和操作使用能力。从而更好地满足大家在数字电子显微学方面的需求。 DigitalMicrograph 工作环境界面 (DM Menu) 菜单(黑框):多种操作指令按照其功能分类。 (DM Tool) 工具(红框):这些可移动窗口包括标准工具以及多种与被显示图像有关的信息。 (Image) 图像(蓝框):图像在DM 软件里被显示的位置。 (Results) 结果(黄框):这个文字窗口包含DM 软件在运行中的一些输出信息。比如图像分析和测量的结果。窗口里面的文字可以被拷贝或以文件格式存储。 (Save) 存储(紫框):显示一些信息以及快速存储、打印、设置等。 当然,大家可以根据自己的习惯任意拖动工具栏快捷方式的位置来进行调整。 当不小心删除了快捷工具时,可以点击菜单栏中的Window,在下拉菜单中选择Basic Tools,然后点击Show All 即可。

同理,适用于显示Results 等功能的复位。 1. 图像的亮度与衬度 图像亮度与衬度的调节是保证图像质量的重要一环。简言之,图像亮度与衬度的调节实际上就是改变上述图像与显示器的相互关系。DM 可以很容易地对图像的亮度和衬度进行调节。为了更好地说明DM 调节亮度和衬度的原理,我们首先讲解一下计算机屏幕显示的原理。一般来讲,屏幕显示器的灰度为8位(黑白)24位(彩色)。Gatan 数码相机最低是12位(最高16位)。一个12 位的数字图像含有4096 个强度值。屏幕显示器的灰度分辨率为256(8位)。因为图像的强度分辨率大于显示器的灰度级别,所以我们必须首先确定怎样使用有限的显示器灰度来显示图像中更高数目的强度。换句话说,我们可以在图像中任选两个强度值,指定较低的强度为屏幕显示器。 操作步骤: 我们可以通过快捷工具栏中的Display Control 使用亮度和衬度划尺来优化图像的显示。 小技巧:双击”Contrast”或”Brightness”或“Gamma”文字(下图红色框中)可以复原亮度或衬度的初值。 强度直方图”Histogram”窗口(如左),用鼠标选择位于右边的强度峰(点击峰的左端,按下鼠标并拖至峰的右端)。这个操作改变了上面提到的图像与显示器之间的相互关系。从而改变了图像的显示。 小技巧:双击直方图窗口下端的灰度横带(下图红框中)可以复原直方图的初始显示值。

电磁波接收与发射

电磁波接收与发射 一、实验内容 1、电磁波的能量 2、电磁波的电场方向 3、电磁波的磁场方向 4、天线辐射的角分布 5、电磁波的驻波 6、电磁波的共振 7、发射天线的电流振幅8、发射天线的电压振幅 9、演示开放电路10、传输线上的电压驻波 二、实验装置 图 3-40-1 电源:输入电压220V/50HZ。 输出直流600V,交流6.3V, 输入功率为85W。 发射管:FU-29中功率电子管。发射波长:约为1.8米。 三、实验原理探讨 本电磁波演示仪,是用电子管产生高频振荡,通过天线与振荡回路的耦合,在发射天线引起感应电流,在发射天线的周围就产生很强的电磁场,发射波长约为1.8米。由于发射天线是开放电路,电磁场充分暴露于空间,很有利于电磁场的辐射而形成很强的电磁波。通过半波振子接受天线上小电珠的明暗变化,演示电磁波的电场强弱及方向。用环形振子接受天线显示电磁波的磁场强弱及其方向。利用金属板(或墙面)对电磁波的反射在空间形成驻

波。 1、电源。输入220V、50H电压,输出高压。 2、发射机。采用自激推挽振荡,发射天线与振荡回路直接耦合。发射天线 是一条长为0.84米的金属管,是电磁波在天线导体中波长的一半,能很方便地放上与取下。在发射机的尾部放反射天线,它是一根长为1.02米的金属管。 3、环形接受天线。上面装有1.5V小电珠和微调电容器,用绝缘起子调整其 频率,用作演示发射天线上的电流振幅与磁场的方向。 4、半波振子接受天线。它由两根拉杆天线组成,中间装有6.3V小电珠,调 节其长度可以改变它的固有频率,用作演示。 5、氖泡棒。在一根绝缘棒的顶端装有氖泡,用作演示发射天线的电压振幅。 6、传输线一对。演示传输线上电压驻波用。 7、支架。放置发射机和传输线用。 四、实验现象与观察 将发射机安放在支架上发射天线与反射天线放入发射机中,把发射机的三孔插头插入电源中,预热5分钟,待发射管发热后即可使用(若输入电压低于220V可将电源器的输入端接入约0.5千伏安自藕变压器上)。 1、电磁波的能量 调节半波振子接受天线长度与发射天线长度相等。一只手将半波振子接受天 线放置电磁波发射方向,并于发射天线平行,相距一米左右,另一只手接通高压开关,接受天线上的小电珠立刻发亮,表明接受天线将部分电磁波的能量转化为光能。此时可用金属导体中的自由电子在交变电场的作用下移动,形成交变电流来解释,使学生加深对电场的认识。演示完毕关闭高压开关。 2、电磁波的电场方向 调整半波振子接受天线与发射天线同长度,将半波振子接受天线放在正对发 射天线约一米远处,接通高压开关,将半波振子接受天线水平地绕接受天线轴转动360度,可以观察到只有当接受天线与发射天线平行时,小电珠发亮。由此可以定出电磁波的电场方向,演示完毕关闭高压开关。

java中注解的几大作用

注解的作用: 1、生成文档。这是最常见的,也是java 最早提供的注解。常用的有@see @param @return 等 2、跟踪代码依赖性,实现替代配置文件功能。比较常见的是spring 2.5 开始的基于注解配置。作用就是减少配置。现在的框架基本都使用了这种配置来减少配置文件的数量。以后java的程序开发,最多的也将实现注解配置,具有很大用处; 3、在编译时进行格式检查。如@override 放在方法前,如果你这个方法并不是覆盖了超类方法,则编译时就能检查出。 使用方法详解: 下面是注解类,其实注解也就是一个类文件 package annotation; import https://www.wendangku.net/doc/fb17036911.html,ng.annotation.ElementType; import https://www.wendangku.net/doc/fb17036911.html,ng.annotation.Retention; import https://www.wendangku.net/doc/fb17036911.html,ng.annotation.RetentionPolicy; import https://www.wendangku.net/doc/fb17036911.html,ng.annotation.Target; import entity.PersonChiness; /*** * Retention:保持、保留 * RetentionPolicy:政策、方针 * @author huawei *@Retention *1、指示注释类型的注释要保留多久。如果注释类型声明中不存在Retention 注释,则保留策略默认为RetentionPolicy.CLASS *2、有三种取值(代表三个阶段): * RetentionPolicy.SOURCE:保留注解到java源文件阶段,例如Override、SuppressWarnings * RetentionPolicy.CLASS:保留注解到class文件阶段,例如 * RetentionPolicy.RUNTIME:保留注解到运行时阶段即内存中的字节码,例如Deprecated */ //元注解:表示的是注解的注解,(同义词有元信息、元数据) //如果不加,javac会把这无用的注解丢掉 @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE,ElementType.METHOD})//指定该注解使用的用处:用在class上和用在方法体上。 public @interface HelloAnnotation {

spring注解注入示例详解

一、各种注解方式 1.@Autowired注解(不推荐使用,建议使用@Resource) @Autowired可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作。 @Autowired的标注位置不同,它们都会在Spring在初始化这个bean时,自动装配这个属性。要使@Autowired能够工作,还需要在配置文件中加入以下 Xml代码 1. 2. @Qualifier注解 @Autowired是根据类型进行自动装配的。例如,如果当Spring上下文中存在不止一个UserDao类型的bean时,就会抛出BeanCreationException异常;如果Spring上下文中不存在UserDao类型的bean,也会抛出BeanCreationException异常。我们可以使用 @Qualifier配合@Autowired来解决这些问题。如下: 1). 可能存在多个UserDao实例 Java代码 1.@Autowired 2.@Qualifier("userServiceImpl") 3.public IUserService userService; 或者 Java代码 1.@Autowired 2.public void setUserDao(@Qualifier("userDao") UserDao userDao) { https://www.wendangku.net/doc/fb17036911.html,erDao = userDao; 4.} 这样,Spring会找到id为userServiceImpl和userDao的bean进行装配。 2). 可能不存在UserDao实例 Java代码 1.@Autowired(required = false) 2.public IUserService userService;

验证电磁波的反射和折射定律

信息与通信工程学院实验报告 (操作性实验) 课程名称:电磁场与电磁波 实验题目:验证电磁波的反射和折射定律 一、实验目的和任务 验证电磁波在媒质中传播遵循反射定理及折射定律。 1、研究电磁波在良好导体表面上的全反射。 2、研究电磁波在良好介质表面上的反射和折射。 3、研究电磁波全反射和全折射的条件。 二、实验仪器及器件 三、实验内容及原理 电磁波在传播过程中如遇到障碍物,必定要发生反射,本处以一块大的玻璃板作为障碍

物来研究当电磁波以某一入射角投射到此玻璃板上所遵循的反射定律,即反射线在入射线和通过入射点的法线所决定的平面上,反射线和入射线分居在法线两侧,反射角等于入射角。 电磁波斜投射到不同介质分布面上的反射和折射,为讨论和分析问题简便,下面所提到的电磁波均指均匀平面电磁波,如图 1 所示。在煤质分布面上有一平行极化波,以入射角斜投射时,入射波、反射波和折射波的电磁场可用下列公式表示: 入射波场 222(xcos xsin )20221(sin cos )e j x z E E a a βθθθθ--+=+ 111(xcos xsin )01 11 j y E H e a βθθη--+= 折射波场 222(xcos xsin )20221(sin cos )e j x z E E a a βθθθθ--+=+ 222(xcos xsin )02 22 j y E H e a βθθη--+= 以上各式中1η、2η分别表示波在两种媒质中的波阻抗。由边界条件可知,在分界面上x = 0 处,有* 1212,t t t t E E H H ==。同时,三种波在分界面处必须以同一速度向Z 方向传播,即它 们的波因子必须相等,则有: *1111sin sin βθβθ= 1122 s i n s i n βθβθ= 由此得:12θθ= 上式表明,媒质分界面上反射角等于入射角,即反射定律。由式得 222111111sin sin sin v v βθθθθθβ= === 上式即折射定律或施耐尔定律。

论文写作中“参考文献”与“注释”之区别

论文写作中“参考文献”与“注释”之区别一篇完整的论文主要有标题、正文、注释、和参考文献这四部分组成。注释是指论文中的一些专业词汇的解释。一般通过两种途径可找到,一种是通过专业工具书(专业词典)。另一种最简便的方法就是在搜索引擎(百度、谷歌、雅虎等)里面输入该专业词汇即可查到。许多作者不了解参考文献与注释的区别,相当多的人将参考文献作为注释写于当页之下,这是不规范的。 《中国学术期刊(光盘版)检索与评价数据规范》中十分清楚地规定:“参考文献是作者写作论文著作时所参考的文献书目”,一般集中列于文末;注释是对论著正文中某一特定内容的进一步解释或补充说明,一般排印在该页地脚。参考文献序号用方括号标出,而注释用数字加圆圈标注(如①②……)”。可见,参考文献与注释有着显著的区别,作者在撰写论著时应严格将其区分开来标注. 参考文献和注释对于一篇科研论文具有重要的意义。虽然并非每篇论文一定要有参考文献和注释,但完整、规范的参考文献和注释,能使论文显得更具有科学性、客观性,为论文更添一份可信度,同时也有利于大型数据库的建立以及对文献数据进行交换、处理、检索、评价和利用。为此,清华大学《中国学术期刊(光盘版)》杂志社制定了一套技术规范――《中国学术期刊(光盘版)检索与评价数据规范》,对检索与评价数据主要项目(包括参考文献和注释)的名称、代码、标识和编排格式等等,提出了一些建议。1999年,新闻出版署发文要求所有进入光盘版的期刊参照执行。该规范的制定和实施,有利于科研成果的信息化。但在参考文献与注释的具体注录中,各种期刊存在着一些明显不同的做法,从而使这一问题显得比较随意和混乱。为此,本文试图对这一问题进行分析,并对二者的区分与处理作一些探讨。 一、“参考文献”与“注释”的内涵 (一)关于“参考文献”, 在学术论文的写作过程中,我们必然要提及他人的研究成果,因为从科研的规律来看,任何研究都是在前人研究的基础上进行的。这一提及他人科研成果的过程,就是参考或引用。 《辞海》(1999年版)的解释是:“参考:参合他事他说而考察之;参酌”;“文献:原指典籍与贤者。后专指有历史价值的图书文物资料。亦指与某一学科

验证电磁波的反射和折射定律

国际教育学院实验报告 (操作性实验) 课程名称:电磁场与电磁波 实验题目:验证电磁波的反射和折射定律 指导教师:- 班级:- 学号:- 学生姓名:- 一、实验目的和任务 研究电磁波在良好导体表面上的反射。 研究电磁波在良好介质表面上的反射和折射。 研究电磁波全反射和全反射的条件。 二、实验仪器及器件 分度转台1台,喇叭天线1对,三厘米固态信号发生器1台, 晶体检波器1个,可变衰减器1个,读数机构1个,微安表1个,玻璃板一块。 三、实验内容及原理 电磁波在传播过程中如遇到障碍物,必定要发生反射,本处以一块大的玻璃板作为障碍物来研究当电磁波以某一入射角投射到此玻璃板上所遵循的反射定律,即反射线在入射线和通过入射点的法线所决定的平面上,反射线和入射线分居在法线两侧,反射角等于入射角。 电磁波斜投射到不同介质分布面上的反射和折射,为讨论和分析问题简便,下面所提 到的电磁波均指均匀平面电磁波,如图 1 所示。在煤质分布面上有一平行极化波,以入射角斜投射时,入射波、反射波和折射波的电磁场可用下列公式表示: 入射波场 222(xcos xsin )20221(sin cos )e j x z E E a a βθθθθ--+=+

111(xcos xsin )01 11 j y E H e a βθθη--+= 折射波场 222(xcos xsin )20221(sin cos )e j x z E E a a βθθθθ--+=+ 222(xcos xsin )02 22 j y E H e a βθθη--+= 以上各式中1η、2η分别表示波在两种媒质中的波阻抗。由边界条件可知,在分界面上 x = 0 处,有* 1212,t t t t E E H H ==。 同时,三种波在分界面处必须以同一速度向Z 方向传播,即它们的波因子必须相等,则有: *1111sin sin βθβθ= 1122s i n s i n βθβθ= 由此得:12θθ= 上式表明,媒质分界面上反射角等于入射角,即反射定律。由式得 222111111sin sin sin v v βθθθθθβ= === 上式即折射定律或施耐尔定律。 图 1 平行极化波斜投射时场量在分界面上的分布 四、实验步骤 测试良好介质的全折射,我们采用平行极化波状态,为此,须将电磁波综合测试仪的辐射喇叭与接收喇叭置于平行极化工作状态,对于测试良好导体的全反射,我们同样采取计划工作波状态 连接仪器。两喇叭口面应互相正对,它们各自的轴线应在一条直线上。调节喇叭的朝

相关文档
相关文档 最新文档