Java一个典型类的定义和UML图

一个典型类的定义:

 1 /**
 2  * 一个典型类的定义
 3  * @author 房廷飞
 4  *
 5  */
 6 public class TextObject {
 7     //属性
 8     int id;
 9     String name;
10     int age;
11     //方法
12     Computer com;
13     void study() {
14         System.out.println("我在认真学习!"+com.brand);
15         
16     }
17     void play() {
18         System.out.println("我在玩游戏!王者农药!");
19         
20     }
21     //构造方法,用于创建这个类的对象。无参的构造方法可以由系统自动创建。
22     TextObject() {
23         
24     }
25     //程序执行的入口,必须要有!
26     public static void main(String[]args) {
27         TextObject text =new TextObject();    //创建一个对象
28         text.id=1001;
29         text.age=18;
30         text.name="房廷飞";
31         Computer c1=new Computer();
32         c1.brand="联想";
33         text.com=c1;
34         text.play();
35         text.study();
36     }
37 }
38 //一个java文件可以有多个class类,但只能有一个public修饰的类
39 class Computer{
40     String brand;
41 }

 

Java虚拟机的内存可以分为三个区域:栈stack、堆heap、方法区method area。

栈的特点如下:

  1. 栈描述的是方法执行的内存模型。每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等)

  2. JVM为每个线程创建一个栈,用于存放该线程执行方法的信息(实际参数、局部变量等)

  3. 栈属于线程私有,不能实现线程间的共享!

  4. 栈的存储特性是“先进后出,后进先出”

  5. 栈是由系统自动分配,速度快!栈是一个连续的内存空间!

堆的特点如下:

  1. 堆用于存储创建好的对象和数组(数组也是对象)

  2. JVM只有一个堆,被所有线程共享

  3. 堆是一个不连续的内存空间,分配灵活,速度慢!

方法区(又叫静态区)特点如下:

  1. JVM只有一个方法区,被所有线程共享!

  2. 方法区实际也是堆,只是用于存储类、常量相关的信息!

  3. 用来存放程序中永远是不变或唯一的内容。(类信息【Class对象】、静态变量、字符串常量等)

 

UML图示例:



 

 

2019-02-14    21:29:55    房廷飞

相关文章

UML有助于在软件开发生命周期的所有阶段理解和可视化系统。以...
UML各种图总结-精华 https://www.cnblogs.com/jiangds/p/65...
MicrosoftOfficeVisio“UML模型图”模板为创建复杂软件系统的...
用例图1.用例图是UML用于描述软件功能的图形。用例图包括用例...
一、用例图:用例图(usecasediagram)是UML用于描述软件功能...
1.A类B类C类这三个类是什么关系?B类依赖A类和C类因为最主要...