码迷,mamicode.com
首页 > 其他好文 > 详细

我的力作

时间:2016-01-05 01:27:53      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:

当我们拿到一个有超类、有子类、包括有主程序的入口类的程序去分析它运行步骤时:

1.程序应当从入口类类(含有public的类,即就是1个.java文件中只能包含一个public类,它就是入口类)开始;

2.你一定要明确的是在入口类中含有的这个静态主函数public static void main(String args){}仅仅是一个普通的静态函数(类函数);

3.在入口类中比静态主函数public static void main(String args){}的运行优先级高的有:

   3.1 入口类的静态变量(第一)static 

   3.2 入口类的静态代码块(第二)static {}

4.在入口类中可以定义的内容如下:

    4.1 入口类实例变量 修饰符 数据类型 变量名;

    4.2 入口类静态变量 修饰符 static 数据类型 变量名;

    4.3 入口类静态方法 static 返回值 方法名() {}

    4.4 入口类静态代码块 static {}

    4.5  入口类初始化代码块 {}

    4.6  入口类构造函数 修饰符 类名(){}

    4.7 入口类实例方法 修饰符 返回值 方法名(){}

    4.8  public static void main(String args)

         { 1. 入口类的对象创建    入口类类名 引用名 = new  入口类类名;

            2.并列的超类 

            3.并列的超类引用子类的对象创建  并列超类类名 引用名 = new 并列子类类名;

                                       并列超类类名 引用名

                            解释:  可以被当作超类的引用变量(类的变量可以分为:基本数据类型变量和引用类型的变量)

                                       new 并列子类类名

                            解释:  创建1个子类对象

                                       并列超类类名 引用名 = new 并列子类类名;

                            解释: 该语句的执行步骤是:

                                      1.开辟子类对象的数据空间;

                                      2.将超类的引用变量分配一个保存引用的空间;

                                      3.将开辟子类对象的数据空间的首地址赋给引用变量;

                                           注意:引用类型变量在声明后必须通过实例化开辟数据空间,才能对变量所指向的对象进行访问,即必须初始化这个对象之后才能将引用指向它

                                                该语句的过程类似于基本数据类型的转换:这些类型由"小"到"大"分别为 (byte,short,char)--int--long--float—double(这里我们所说                                                   的"大"与"小",并不是指占用字节的多少,而是指表示值的范围的大小)。

                                                 将"小"数据转换为"大"数据时 :

                                                  byte b;int i=b; long l=b; float f=b; double d=b;

                                                 将"大"数据转换为"小"数据时:

                                                  你可以使用强制类型转换。即你必须采用下面这种语句格式: int n=(int)3.14159/2;可以想象,这种转换 肯定可能会导致溢出或精度的                                                     下降。

              .......;

              .......;

          }

                                                        public static void main(String args)   

                                                                                                        {    

                                                                                                                     使用new关键字实例化对象时。

                                                                                                                     调用某个类的静态方法时。

                                                                                                                     读取或设置类的静态字段时(被final修饰、已在编译期把结果放入常量池的除外)。

                                                                                                                     使用java.lang.reflect包的方法对类进行反射调用。

                                                                                                                     初始化某个类的子类时。

                                                                                                                     虚拟机启动时被标明为启动类(包含main方法的类)。

                                                                                                         }

 

我的力作

标签:

原文地址:http://www.cnblogs.com/lubocsu/p/5100769.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!