class Person
{
private String name= "张三";;
private int age = 90;
/**/
Person()
{
name = "张三";
age = 10;
// System.out.println("person run");
// speak();
}
Person(String n,int a)
{
name = n;
age = a;
}
public void speak()
{
System.out.println("name="+name+",age="+age);
}
}
/*
Person p1 = new Person("李四",30);
1,加载Person.class文件。
2,因为new,在堆内存中开辟空间,创建对象。在对象中出现name和age。
3,对象中的属性进行默认初始化。
4,对象中的属性进行显示初始化。
5,构造函数初始化。(可以自定义对象初始化的方式。)
6,创建引用型变量,并将对象的地址值付给该变量,该变量指向该对象。
什么时候定义构造函数呢?
当对象产生时需要一些具体属性或者行为的时候,就定义在构造函数中。
比如:人对象一产生就需要具体的姓名和年龄。这些值都在构造函数中进行指定。
*/
class ConsDemo
{
public static void main(String[] args)
{
// Person p = new Person();
//p.speak();
Person p1 = new Person("李四",30);
Person p2 = new Person("王武",10);
p1.speak();
// Person p1 = new Person();
// p1.speak();
}
}
分享到:
相关推荐
- **模块化设计**:将复杂的测试逻辑分解为多个小模块,每个模块负责一个具体的功能测试,这样可以提高代码的可读性和维护性。 - **可重复性**:设计的脚本应当能够在相同的测试条件下重复执行,得到一致的结果,以...
1. 初始化:选择一个起始顶点u0,将其放入集合U,边集TE为空。此时,U只包含一个顶点,而V-U包含所有其他顶点。 2. 边的选择:在所有连接U和V-U的边中,找到权重最小的边(u0, v0),将其添加到TE中,并将v0加入集合U...
2. **初始化函数**:编写一个初始化函数(`init()`),用于初始化所有必要的数据结构,确保程序开始时系统处于正确的初始状态。 3. **分配磁盘块**:实现一个函数(`alloc()`),用于根据用户请求分配磁盘块给指定的...
- **配置监听器**:为Spring容器配置监听器,以便于在启动时初始化Spring容器。 - **配置过滤器**:配置Struts2的核心过滤器`StrutsPrepareAndExecuteFilter`,确保所有HTTP请求都经过Struts2处理。 ##### 3. 配置...
单向循环链表是一种特殊的数据结构,每个节点包含一个指向下一个节点的指针,最后一个节点的指针指向头节点,形成闭环。 #### 三、代码解析 1. **数据结构定义**: ```c typedef struct node { int num; // ...
- `init` 方法用于初始化窗体,在这里添加了一个 `画板类` 的实例到窗体中,并设置了窗体为可见状态。 ##### 3.3 画板类 (`画板类`) ```java public class 画板类 extends JPanel { // 定义画图所需的控制变量 ...
`frame()`函数位于`osgViewer/ViewerBase.cpp`文件中,它是`ViewerBase`类的一个成员函数,同时也是`Viewer`类和`CompositeViewer`类默认实现的基础。以下是`frame()`函数的关键步骤: 1. **初始化检查**:如果当前...
三角矩阵中的重复元素c可共享一个存储空间,其余的元素正好有n×(n+1)/2个,因此,三角矩阵可压缩到向量Sa[0……n×(n+1)/2]中,其中c存放在向量的最后一个分量中。用向量Sa[0……n×(n+1)/2]压缩存储下三角矩阵,...
在程序设计过程中,需要注意变量的类型和初始化,例如`int i, x, n`用于存储整数,`float t, s`用于存储浮点型数值。循环和递归的使用是解决问题的关键,同时也需要进行正确的输入输出处理,如使用`scanf`获取用户...
在执行完一个进程后,会将该进程的动态优先级降低至最低,同时提升其他进程的动态优先级,确保所有进程都有执行的机会。 实验的源代码中,定义了进程控制块(PCB, Process Control Block)结构体,包含进程ID、静态...
虽然本文不深入探讨通信软件的具体实现,但在嵌入式系统中,通信同样是一个重要的组成部分。 - **串行通信**:UART等串行通信接口在嵌入式设备中非常常见,用于与其他设备交换数据。 - **网络通信**:随着物联网的...
平衡二叉树是在构造二叉排序树的过程中,每当插入一个新结点时,首先检查是否因插入新结点而破坏了二叉排序树的平衡性,若是,则找出其中的最小不平衡子树,在保持二叉排序树特性的前提下,调整最小不平衡子树中各...
在多重继承时,一个派生类有多于一个的基类,这时派生类将是所有基类行为的组合。 虚基类的引入是为了解决二义性的问题。声明虚基类的方法是:在定义虚基类的直接派生类时,用关键字 virtual 引出基类名。二义性...
接着,使用选定的追踪算法对目标进行初始化,确定其初始位置。在后续帧中,算法会根据前一帧的目标信息预测当前帧的位置,并在实际图像中搜索验证,更新目标状态。这个过程会持续进行,直到追踪结束或者目标离开视野...
报告的核心内容涉及操作系统原理中的一个重要算法——**银行家算法**。该算法主要用于避免死锁的发生,确保系统的安全运行。通过本实验,旨在加深对操作系统资源管理机制的理解,并通过编程实践掌握银行家算法的具体...
构造方法是一个类方法中方法名与类名相同的类方法,其作用是当使用 new 关键字创建对象时,自动调用并对新建对象进行初始化操作。 静态方法与非静态方法的区别是静态方法与非静态方法的语法上的区别在于是否被 ...
1. **初始化**:创建一个存储树节点的数组 huffTree,所有元素的双亲、左右孩子都置为 -1。 2. **赋初值**:数组 huffTree 的前 n 个元素的权值置为给定的权值 w[n]。 3. **合并**:进行 n-1 次合并,每次合并都...
下面我们将深入探讨变量的概念、定义、初始化以及一个实际的示例。 首先,变量是程序中可变的存储区域,它的值可以在程序的运行过程中进行修改。变量名是用来标识变量的唯一标识,遵循标识符的命名规则。标识符应由...
接着,我们需要一个函数来模拟报数过程。这个函数会遍历数据结构,每次报数到m时,将对应的节点从结构中移除。移除节点后,我们需要更新数据结构,以便下一轮报数从被移除节点的下一个节点开始。 在这个具体的测试...
- **空白块链表**: 由一系列节点组成,每个节点代表一个空闲块,并通过指针链接起来。 - **文件目录**: 记录文件占用的空间信息,如文件标识、文件的起始块号等。 **2.3 分配与回收流程** - **分配过程**: 在链表...