android前端注释用什么符号?
在Android前端开发中,通常使用双斜杠(//)作为单行注释的符号。这种注释方式适用于注释单行代码或者在代码行的末尾添加注释。另外,还可以使用斜杠加星号(/* ... */)作为多行注释的符号,用于注释多行代码或者注释较长的段落。多行注释可以跨越多个代码行,并且可以嵌套使用。注释是一种重要的开发工具,可以提高代码的可读性和可维护性,同时也方便其他开发人员理解和修改代码。
Java的注解为何如此流行?注解的工作原理是什么?
我想注解的流行主要是因为方便。
它摒弃了java中最难的部分,配置一堆的配置文件;new一堆的类。作为程序员最直观的是代码,而不是配置文件。所以springboot就自然而然的流行起来了,他完全可以不用配置文件,通过代码实现以前的配置。
那么注解是怎么工作的呢,首先得了解下java语言,java是一种介于编译和解释的中间态(虽然java严格意义上属于编译型的),java在运行的过程中使用的是.class文件。
这种方式让java可以变得很灵活,所以反射这个方式应运而生。他可以非常的无敌,通过反射可以动态的将一个类对象创建出来,而不用使用传统的方式new出来。
通过反射可以读取到类中的每个方法,每个成员变量,甚至可以读取到私有变量和方法。
然后为了使用上的方便,我们会使用一种设计模式,单例模式,这个模式的好处是新建一个对象只需要一次,以后就再也不用new这个对象了,其实也可以理解成静态成员对象。有关设计模式我就不讲了,自己百度下。
最后注解的运行机制就是通过反射这个类,并动态的创建这个单例,所以这样注解后,运行就生效了。那么是谁来识别注解的呢,这个也是通过反射实现的,定义一个注解类的特征类
例如下面写法:
@DEMO
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface DEMO {
}
这要java就能根据类上的注解动态实现功能了,是不是很神奇。
Java官方没有实现Servlet类,那在服务器运行过程中,Servlet类的代码是怎么起作用的?
谢邀。
首先问题主一个问题,如果Servlet被实现了,那应该怎么实现?实现什么逻辑?你的业务代码又该写到哪里?
其次对于Servlet的执行,这里不直接给出答案,只从表象来引导思考,由题主自行去找到答案:
- Servlet刚出来的时候是需要通过web.xml进行配置的,3.0开始支持基于注解的方式配置。这里需要的知识点有Java读取xml,Java注解(注解的执行原理,不是使用)。
- 无论配置web.xml还是注解,都配置了url。作用是什么?
- 通过url找到Servlet,怎么去执行,也就是题主关心的问题。涉及知识点:Java如何动态的执行一个类?
下面给个完整的大致流程(题主看之前最好先自己思考下):
- 你访问服务地址,浏览器发送HTTP请求
- 服务端接收到请求后,解析HTTP消息,根据web.xml的配置,或注解上面的配置找到URL对应的Servlet
- 通过反射来执行Servlet
- 结果组装为HTTP响应返回
- 浏览器渲染响应,你看到了结果