//演示内容如下
// 重载构造器
// 用this()调用另一个构造器
// 对象初始化块
// 静态初始化快
// 实例域初始化
import java.util.*;
public class ConstrutorTest
{
public static void main(String[] args)
{
Employee[] staff=new Employee[3];
staff[0]=new Employee("Harry",4000);
staff[1]=new Employee(6000);
staff[2]=new Employee();
for(Employee e : staff)
System.out.print("name="+e.getName()+
" id ="+e.getId()
+" salart="+ e.getSalary());
}
}
class Employee
{
public Employee(String n,double s){
name=n;
salary=s;
}
public Employee(double s){
this("Employee #"+nextId,s); //用this调用另一个构造器
}
public Employee(){ //默认构造器
}
//以上是重载构造器
public String getName() {
return name;
}
public double getSalary()
{
return salary;
}
public int getId()
{
return id;
}
//以上是访问器方法
private static int nextId; //
private int id;
private String name="";
private double salary;
static
{
Random generator = new Random();
nextId=generator.nextInt(10000); //对象初始化块
}
{
id = nextId;
nextId++; //实例域初始化块
}
}
发表评论
-
1.选区
2009-07-18 17:09 5981 -
学习异常处理
2009-02-03 03:38 957导致程序运行不正常的 ... -
多态 向上转型 动态绑定
2009-02-02 17:43 9681.成员变量和静态方法不具有多态性,因为它们都是编译时绑定的。 ... -
复用类——组合,代理,还是继承?
2009-02-02 17:12 1022类的复用基本是三种方式,组合,代理,继承。为了同样 ... -
阶段总结
2009-02-02 01:21 658最近在看JAVA编程思想和 ... -
引用变量是多态的
2009-02-02 01:20 719//演示引用变量的多态 ... -
构造器调用顺序
2009-02-02 01:19 787/*演示构造器的调用顺序 *一,调用基类构造器,反复递归到根, ... -
类之间的关系
2009-02-02 01:18 682一些简单的类设计技巧 ... -
简单类设计技巧
2009-02-02 01:18 725一些简单的类设计技巧 ... -
打包问题?
2009-02-02 01:17 619关于打包问题: 将类文件打包后,编译成功后。 如果把cla ... -
特殊变量this
2009-02-02 01:16 667特殊变量this A this ... -
方法参数总结
2009-02-02 01:15 754方法参数: java里使用值调用,方法得到的是所以参数值的一个 ... -
JDK和环境变量的说明
2009-02-02 01:08 1303首先,java是个编程语言。 其次,SUN推出了3个java ...
相关推荐
在Java编程语言中,构造器(Constructor)是一个特殊的方法,主要负责对象的初始化工作。当创建一个新的类实例时,构造器会被自动调用。构造器的名称必须与类名完全相同,且没有返回类型,包括void。理解并熟练运用...
3. **构造器与初始化块** - **构造器**:构造器用于初始化新创建的对象,每次创建对象时,构造器都会运行,用于设置实例变量的初始状态。 - **初始化块**:分为静态初始化块和非静态初始化块。静态初始化块在类...
在 Java 编程语言中,构造器是一种特殊的方法,用于初始化对象的创建。它是 Java 类中最重要的一个概念。下面将深入讨论构造器的机理、执行顺序、作用及与其他概念的区别。 一、构造器的机理 构造器是一种特殊的...
`this()`关键字调用了无参构造器,确保了即使通过有参数的构造器创建对象,成员变量也会先由无参构造器初始化,然后在有参构造器中进行进一步的设置。 4. **多参数构造器** `class A`还展示了如何处理多个参数的...
Java中的对象初始化流程是编程实践中一个非常重要的概念,它涉及到类加载、静态初始化块、实例初始化块、构造器等多个方面。下面将详细解释这个过程。 首先,对象初始化流程的起点是程序的入口点,即`main`方法。当...
在这里,无参构造器`Platypus()`通过`this("John/Mary Doe")`调用了带参数的构造器来初始化`name`。 关键字`super`在构造器和方法中的用途也不同。在方法中,`super`用于调用超类中被重写的方法,而在构造器中,`...
初始化和清理是编程中至关重要的概念,特别是...总之,初始化和清理是Java编程中必不可少的环节,包括正确使用构造器初始化对象、理解对象创建过程、掌握垃圾回收机制及其原理,这些都对编写高效、稳定的代码至关重要。
《勇者斗恶龙》是一款基于Object-C编程语言开发的游戏模拟程序,旨在为开发者提供一个实践和学习便利构造器与初始化方法的平台。在Object-C编程中,这些概念是构建对象和管理对象生命周期的关键。 首先,我们要理解...
java 静态_非静态 字段_方法_代码块 子类父类构造_初始化顺序! 三个class 让你清清楚楚 第一个class java代码如下: package initialOrder; class Parent { // 静态变量 public static String p_StaticField...
6. **类初始化与类加载器**: - 类的初始化是由对应的类加载器触发的,当且仅当以下条件之一满足时: - 遇到new关键字实例化对象; - 遇到静态字段(非final)并对其进行访问; - 遇到静态方法的调用; - 使用...
如果在构造器或初始化块中依赖其他静态或非静态成员,必须确保这些成员在需要之前已经被正确初始化。否则,可能会导致程序运行时错误或者逻辑错误。 此外,静态初始化块只在类加载时执行一次,而初始化块(也称为...
### WPF 对象初始化器详解 #### 一、对象初始化器概述 对象初始化器是C# 3.0引入的一项新特性,它简化了对象创建的过程。在传统的面向对象编程中,创建对象后通常需要手动设置各个属性。这种方式不仅繁琐,而且...
主要通过实例解析Java中的构造器初始化,代码很简单,叙述很明确,需要的朋友可以了解下。
当我们谈论“Java类继承初始化顺序”时,涉及到的关键知识点包括构造器、成员变量的初始化、super关键字以及方法的覆盖。 首先,了解类初始化的顺序至关重要。当创建一个子类实例时,初始化过程遵循以下步骤: 1. ...
- **自定义构造器**:开发者可以根据需求定义一个或多个构造器来满足不同的初始化需求。自定义构造器可以是带参数的,也可以是无参数的。 #### 三、构造器的作用 构造器的作用主要体现在以下几个方面: - **初始...
`init`文件可能包含了各种构造函数的实现,展示它们如何被调用以及与初始化块交互的方式。 5. **成员变量初始化**: Java允许我们在变量声明时进行初始化。这种初始化发生在构造函数之前,因此在实例初始化块之前...
本文将深入探讨Java中的初始化过程,包括对象的构造器初始化以及类成员的初始化顺序,同时也会涉及Java的垃圾回收机制,即内存的自动清理。 首先,让我们详细了解一下Java中的构造器初始化。构造器是Java中用于初始...
便利构造器是类的辅助构造器,它可以调用指定构造器来完成实例对象的初始化。便利构造器的主要作用是提供一个简洁的方式来初始化类的实例对象。便利构造器的名称也以 "init" 开头,后面可以加上参数列表。 在 ...
《Java编程思想》第五章主要讨论的是对象的初始化与清理,包括构造器的使用、方法重载以及默认构造器的概念。下面将详细阐述这些知识点。 ### 一、构造器确保初始化 1. **为什么要引入构造器**:在Java中,构造器...