本文作者:plkng

java语言原理 java语言工作原理

plkng 6分钟前 2
java语言原理 java语言工作原理摘要: 大家好,今天小编关注到一个比较有意思的话题,就是关于java语言原理的问题,于是小编就整理了2个相关介绍java语言原理的解答,让我们一起看看吧。Java的注解是什么原理?APP原...

大家好,今天小编关注到一个比较意思的话题,就是关于java语言原理问题,于是小编就整理了2个相关介绍Java语言原理的解答,让我们一起看看吧。

java语言原理 java语言工作原理
图片来源网络,侵删)
  1. Java的注解是什么原理?
  2. APP原理?

Java的注解什么原理?

首先,从一个简单的注解开始,@Target(ElementType.TYPE)

@Retention(RetentionPolicy.RUNTIME)

public @interface Test {

String value() default "";

java语言原理 java语言工作原理
(图片来源网络,侵删)

}

使用javap -verbose命令查看这个注解的class文件,发现这个注解被编译成了接口,并且继承了java.lang.annotation.Annotation接口,接口是不能直接实例化使用的,当在代码中使用这个注解,并使用getAnnotation方法获取注解信息时,JVM通过动态代理的方式生成一个实现了Test接口的代理对象实例,然后对该实例的属性赋值,value值就存在这个代理对象实例中。

如果顺着getAnnotation方法继续跟踪源代码,会发现创建代理对象是在AnnotationParser.java中实现的,这个类中有一个annotationForMap方法。在annotationForMap方法内部使用Proxy.newProxyInstance方法在运行时动态创建代理,AnnotationInvocationHandler实现了InvocationHandler接口,当调用代理对象的value()方法获取注解的value值,就会进入AnnotationInvocationHandler类中的invoke方法,深入invoke方***发现,获取value值最终是从AnnotationInvocationHandler类的memberValues属性中获取的,memberValues是一个Map类型,key是注解的属性名,这里就是“value”,value是使用注解时设置的值。

因为回答中不能插入源码做讲解辅助,更多详细内容可以关注『Java实战技术』主页的原创文章《Java注解是如何玩转的,面试官和我聊了半个小时》。

java语言原理 java语言工作原理
(图片来源网络,侵删)

app原理?

Android应用程序是用Java语言编写的。编译过后的字节码,以及应用程序要求的其他数据和资源文件,通过aapt工具被绑定在一起,称为 Android包,这是一个带.apk后缀的档案文件。这个文件也是用户下载到他们设备上的文件。所有的代码在一个单一的.apk文件中,组成一个“应用程序”。

主要过程

1、需求分析

大部分创业型项目在这个阶段只是一些比较抽象的想法。有一份相对完善的需求文档,不仅有助于创业者自身对项目的理解和周全性分析,如果项目是交由设计公司去完成的话,也更有利于对方准确把握项目的定位和商业模式,以便给出专业的建议和解决方案

2、原型设计

接下来会根据上面提到的具体需求文档,项目经理进行会进行原型图的设计。

3、UI设计

原型图经过反复推敲修正后,UI 设计师会进行UI界面相关的配色设计、功能具象化处理、交互设计、以及各种机型、系统的适配。UI 设计师经过多次与项目经理沟通修改后,最终的到定稿的高保真设计图。

4、开发

经过以上几个过程之后,会正式进入到开发阶段。

到此,以上就是小编对于java语言原理的问题就介绍到这了,希望介绍关于java语言原理的2点解答对大家有用。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享