zoukankan      html  css  js  c++  java
  • 学校项目过程中知识点 Java 2015/9/15 晚

    ##命令行运行Java程序
    1.文件
    Java的源代码存放在扩展名为“.java”的文件中;
    Java源文件编译后,得到“.class”的文件
    2.方法
    命令行下编译java源代码的方法:javac  文件名.java
    命令行下执行.class文件:java  文件名(如果文件有main方法,直接执行)

    ##类的生命周期


    在一个类编译完成之后,下一步就需要开始使用类,如果要使用一个类,肯定离不开JVM。在程序执行中JVM通过装载,链接,初始化这3个步骤完成。
    类的装载是通过类加载器完成的,加载器将.class文件的二进制文件装入JVM的方法区,并且在堆区创建描述这个类的java.lang.Class对象。用来封装数据。 但是同一个类只会被类装载器装载一次。
    链接就是把二进制数据组装为可以运行的状态。
    链接分为校验,准备,解析这3个阶段
    校验一般用来确认此二进制文件是否适合当前的JVM(版本),
    准备就是为静态成员分配内存空间,。并设置默认值
    解析指的是转换常量池中的代码作为直接引用的过程,直到所有的符号引用都可以被运行程序使用(建立完整的对应关系)
    完成之后,类型也就完成了初始化,初始化之后类的对象就可以正常使用了,直到一个对象不再使用之后,将被垃圾回收。释放空间。
    当没有任何引用指向Class对象时就会被卸载,结束类的生命周期
     

    ##Java中创建对象的方法


    http://blog.csdn.net/mhmyqn/article/details/7943411
    有4种显式地创建对象的方式:
    1.用new语句创建对象,这是最常用的创建对象的方式。
    2.运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。
    3.调用对象的clone()方法。
    4.运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法.

    ##Java反射机制


    http://blog.csdn.net/liujiahan629629/article/details/18013523(简单易懂  一看就懂)
    http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html
    JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
    Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。

    Class
    Class是Reflection故事起源。众所周知Java有个Object 类,是所有Java 类的继承根源,其内声明了数个应该在所有Java 类中被改写的方法:hashCode()、equals()、clone()、toString()、getClass()等。其中getClass()返回一个Class 对象。
    Class 类十分特殊。它和一般类一样继承自Object,其实体用以表达Java程序运行时的classes和interfaces,也用来表达enum、array、primitive Java types(boolean, byte, char, short, int, long, float, double)以及关键词void。当一个class被加载,或当加载器(class loader)的defineClass()被JVM调用,JVM 便自动产生一个Class 对象。
  • 相关阅读:
    LTE问题集锦(0)
    LTE问题集锦(3)
    LTE问题集锦(2)
    LTE问题集锦(1)
    LTE学习之路(9)—— 3GPP TS协议系列总结
    (原创)我的测试生涯(2)——《Clearcase UCM Practice》
    我的测试生涯(1)——开篇《Clearcase简介》
    (转载)十年、五年,你该做的事
    (转载)Windows消息机制
    LTE学习之路(8)——信令流程
  • 原文地址:https://www.cnblogs.com/wangqi327/p/5523873.html
Copyright © 2011-2022 走看看