提纲:1.构造方法
2.方法重载
3.引用传递
4.this关键字
1.构造方法:
1)构造函数不写返回值,但是有返回值,返回的是创建对象的地址。
2)方法名和类名一样。
3)创建对象时候调用。
构造方法即构造函数或构造器。每一个类中都有一个默认的构造函数。
比如在下面代码中:
public Boos(){ //定义一个不带参数的构造方法
}
用途:实例化对象
Soldier sol = new Soldier();
sol.setName("孔雀");
sol.setBlood(40) ;
2.方法重载:
方法重载就是方法名相同,但是参数不同(参数个数、参数类型、参数顺序),就称为方 法重载。只需要看方法名与参数,而与函数的返回类型或是执行内容均无关系。其作用是实现做同一件事情的多种不同形式.
public void fight(Soldier sol){
sol.setBlood(sol.getBlood()-1);
System.out.println(sol.getName()+"被"+name+"攻击了,他现在的血量是"+sol.getBlood());
}
public void fight(Monster mon){
mon.setBlood(mon.getBlood()-1);
System.out.println(mon.getName()+"被"+name+"攻击了,他现在的血量是"+mon.getBlood());
}
}
3.引用传递:
引用传递的方式:
引用传递是将对象名stu中存储的地址拷贝一份存入到stu2中,此时两个对象名就指向了 同一个对象;现在适用其中任何一个对象名,来修改对象的属性值,那么另一个对象名的也会跟着改变(这就相当于1个人有两个名字)。
//实例化(创建)对象
Student stu1 = new Student("张三");
//实例化(创建)对象
//Student stu2 = new Student("李四");
//stu2 = stu1;//赋值操作
stu1的地址赋给stu2.此时,stu2和stu指向同一地址。被访问的时候就是只访问到stu1 的地址。
4.this关键字:
this关键字只能调用当前类中的属性和方法
用途:
a.用来区分属性名和参数名(前提是属性名和参数名相同)
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setBlood(int blood){
this.blood = blood;
}
b.调用构造方法
//定义一个构造方法
protected Student(){
this("陈奕迅");//调用带一个字符串参数的构造方法
}
c.this关键字表示当前调用方法的对象。
分享到:
相关推荐
- **初始化对象**:构造方法的主要目的是为新创建的对象设置初始值,确保对象处于可使用的状态。 - **避免重复代码**:如果多个对象需要相同的初始化操作,构造方法可以避免在多个地方编写重复的代码。 ### 2. 构造...
通过在构造方法中设置初始值,可以确保对象在使用前已经被正确初始化,从而避免潜在的错误和异常。 #### 三、构造方法的分类 构造方法可以根据参数的不同分为无参构造方法和有参构造方法。无参构造方法用于简单的...
当创建`Person`对象时,内存分配会涉及为对象分配空间,并根据传递的参数调用构造方法,将这些参数赋值给相应的成员变量。 内存分配在Java中主要发生在堆和栈中。栈内存主要存储基本类型的变量和对象引用,而堆内存...
构造方法与类名相同,没有返回类型,且可以有不同参数列表,以便在创建对象时提供不同的初始化方式。Java允许我们定义多个构造方法,这就是所谓的构造方法重载。通过重载,我们可以根据需要提供不同的构造函数,以...
- `this`关键字在构造方法中可以用来引用当前对象,常用于调用本类的其他构造方法。 - 例如,`this(param1, param2)`表示调用本类中另一个参数列表为`param1`和`param2`的构造方法。 8. **构造方法的注意事项**:...
在C#编程语言中,了解值传递和引用传递的概念至关重要,因为这直接影响到函数或方法如何处理参数。本文主要探讨这两个概念以及与之相关的知识点。 首先,值传递是指当一个方法或函数调用时,实际参数(即调用时提供...
构造方法可以有参数,这样就可以在创建对象时传递初始值。例如,如果我们有一个名为`Circle`的类,用于表示圆,我们可以定义一个带有半径参数的构造方法: ```java public class Circle { float radius; // 带...
- Java中的方法调用采用的是“值传递”而非“引用传递”。 - 对于基本数据类型,传递的是该值的一个副本;对于引用类型,传递的是指向对象的引用的副本。 #### 2. 参数传递的实例 - 考虑以下`Text1`类中的`add`方法...
通过本文的学习,读者应能深刻理解Java中构造方法的作用和使用方式,掌握构造方法与普通方法的区别,学会如何定义带参构造方法来初始化对象的属性,并理解实例化对象时构造方法自动调用的原理。此外,通过实际编程...
在Java中,构造方法与类名相同,没有返回类型,并且可以具有参数,以便根据传入的值设置对象的属性。C#中也类似,但可以标记为`static`的构造函数,称为静态构造函数,用于初始化类的静态数据。 接着,我们探讨构造...
默认构造方法会在未定义任何构造方法时自动提供,而自定义构造方法则允许我们根据需要传递参数,以便在创建对象时设定初始状态。 例如,如果我们有一个名为`Person`的类,我们可以定义一个带有姓名和年龄参数的构造...
在实例化对象时,可以通过对象初始化器一次性设置多个属性的值,这与构造方法结合使用可以提高代码的可读性: ```csharp Student student = new Student("张三", 20) { Gender = "男" }; Car car = new Car("宝马",...
在Java中,每个对象在创建时都会自动调用父类的构造方法,所以构造方法通常会以`ALOAD 0`开始,加载`this`引用,然后调用`super()`。这在ASM中表示为`mv1.visitVarInsn(ALOAD, 0)`和`mv1.visitMethodInsn...
4. **参数可选**:构造方法可以带有参数,允许在创建对象时传递初始值,也可以没有参数,提供一个默认的构造方式。 在农业信息系统的人员信息管理部分,可能需要创建教师和学生类。例如,教师类(Teacher)包含姓名...
这是`this`关键字的一个典型应用,它将`d`和`m`的值传递给`this`所代表的对象(即当前正在创建的对象)的两个参数构造方法,从而避免了重复设置`day`和`month`的代码。然后,这个构造方法继续设置`year`的值。 这里...
本文主要探讨的是Java语言中的一个重要概念——构造方法在教学过程中的应用与理解。构造方法是类的一个特殊方法,用于初始化新创建的对象。在Java中,每一个类都可以有一个或多个构造方法,它们在对象创建时被调用,...
同时,可以通过构造方法传递参数初始化对象的属性。 ```java Person person = new Person("Tom", 25); ``` ### 4. static变量 `static`变量是类级别的变量,被类的所有对象共享。修改`static`变量会影响到所有...
3. `View(Context context, AttributeSet attrs, int defStyleAttr)`:第三个构造方法增加了defStyleAttr参数,它是样式引用资源ID。当我们在XML中使用一个View时,如果该View有自定义的样式,可以通过这个参数指定...
1. **值传递**:在构造函数中使用值传递时,函数接收的是参数值的副本。这意味着即使在构造函数内部改变了这个副本,也不会影响到调用构造函数时传入的原始值。例如,在C++中,如果参数是基本类型(如int或double)...