我们以下面的类来说明一个基本的 Java 类的运行顺序:

  1. public class Demo{
  2. private String name;
  3. private int age;
  4. public Demo(){
  5. name = “程序员生活网”;
  6. age = 3;
  7. }
  8. public static void main(String[] args){
  9. Demo obj = new Demo();
  10. System.out.println(obj.name + “的年龄是” + obj.age);
  11. }
  12. }

基本运行顺序是:

  1. 先运行到第 9 行,这是程序的入口。
  2. 然后运行到第 10 行,这里要 new 一个Demo,就要调用 Demo 的构造方法。
  3. 就运行到第 5 行,注意:可能很多人觉得接下来就应该运行第 6 行了,错!初始化一个类,必须先初始化它的属性。
  4. 因此运行到第 2 行,然后是第 3 行。
  5. 属性初始化完过后,才回到构造方法,执行里面的代码,也就是第 6 行、第 7 行。
  6. 然后是第8行,表示 new 一个Demo实例完成。
  7. 然后回到 main 方法中执行第 11 行。
  8. 然后是第 12 行,main方法执行完毕。

作为程序员,应该清楚程序的基本运行过程,否则糊里糊涂的,不利于编写代码,也不利于技术上的发展。

四. Java继承和多态
1. 继承的概念与实现
2. Java super关键字
3. 继承中的方法的覆盖和重载
4. 多态和动态绑定
5. instanceof 运算符
6. 多态对象的类型转换
7. Java static关键字
8. Java final关键字

9. Java Object类

Java类的基本运行顺序相关推荐

  1. java类的运行顺序_Java语言类的基本运行顺序

    本文主要向大家介绍了Java语言类的基本运行顺序,通过具体的代码向大家展示,希望对大家学习Java语言有所帮助.我们以下面的类来说明一个基本的 Java 类的运行顺序:1. public class  ...

  2. Java知多少(23)类的基本运行顺序

    我们以下面的类来说明一个基本的 Java 类的运行顺序: 1 public class Demo{ 2 private String name; 3 private int age; 4 public ...

  3. java 进程运行时间_将Java类作为子进程运行

    java 进程运行时间 我本周需要将Java类(而不是jar)作为子进程运行. 更确切地说,我想从测试内部产生一个新进程,而不是直接在测试内部(进程内)运行它. 我不认为这是幻想或复杂的事情. 但是, ...

  4. 将Java类作为子进程运行

    我本周需要将Java类(而不是jar)作为子进程运行. 更准确地说,我想从测试内部产生一个新进程,而不是直接在测试内部运行(进程内). 我不认为这是幻想或复杂的事情. 但是,这不是我以前不需要做的事, ...

  5. java 类的加载顺序

    类的加载顺序 public class ClassA {public static ClassA classa = new ClassA();static{System.out.println(&qu ...

  6. JAVA类之间的构造顺序

    构造函数并不具有多态性,它们实际上是static方法,只不过该static声明是隐式的.因此,构造函数不能够被override. 在父类构造函数内部调用具有多态行为的函数将导致无法预测的结果,因为此时 ...

  7. java类的加载顺序题目_Java 类的加载顺序(题)

    引例 public class A extends B { public int a = 100; public A() { super(); System.out.println(a); a = 2 ...

  8. Java类中的初始化顺序

    根据<Thinking in Java>相关章节及自己的理解举例来说明类初始化顺序. public class InitialOrder {private static String st ...

  9. Java类中变量初始化顺序

    下面代码显示了静态初始化代码块,非静态实例初始化代码块,构造函数 等在Java中从代码载入内存到代码执行过程的执行顺序: import static net.mindview.util.Print.* ...

最新文章

  1. ggplot2可视化水平箱图并使用fct_reorder排序数据、使用na.rm处理缺失值(reorder boxplot with fct_reorder)、按照箱图的中位数从小到大排序水平箱图
  2. export 和 export default 的区别
  3. 【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( jni 中 main 函数声明 | 命令行处理 | jni 调用 lib7zr.so 函数库处理压缩文件完整代码 )
  4. UGUI 帧动画插件
  5. Java设计模式(十):迭代器设计模式
  6. java 入门 博客园_javaweb入门
  7. 为文档快速插入页眉和页脚
  8. rocketmq 消息指定_进大厂必备的RocketMQ你会吗?
  9. 从UnitedStack OS 1.0 Preview试用申请问卷调查学习OpenStack
  10. rocketmq一个topic多个group_SpringBoot和RocketMQ的简单实例
  11. Project facet Java version 1.7 is not supported.解决方法
  12. Apache Echarts实现矢量地图
  13. 建立linux系统启动配置文件,linux下系统启动时,几个配置文件 启动顺序
  14. C# 真正完美的 汉字转拼音
  15. linux如何设置默认浏览器,如何从命令行设置默认浏览器?
  16. [精彩泄漏截图] 2006最值得期待的游戏
  17. 如何处理计算机相关涉密信息的传输与保存,违反国家规定,对涉密计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,构成()。...
  18. matlab点云数据dem,一种基于点云数据的DEM生成方法
  19. 手机 App 的技术栈
  20. 子墨对酒《三国杀》里论模式(二)门面模式

热门文章

  1. 13_短信发送器_问题说明
  2. mybais传入多个参数的方法
  3. 将Jquery序列化后的表单值转换成Json
  4. sqlite3API函数
  5. 由 Session 和 Cookie 的区别说起
  6. bailian 2754八皇后
  7. 项目后台的最新认识和对MVC封装性、可维护性的更深刻认识!
  8. Oracle语句总结
  9. 页面间参数值传递含“%”的处理方法
  10. 网络模型的保存和读取