1.类的组成
(1)类的属性
(2)类的方法
方法:普通方法,构造方法
普通方法:类的行为方式
eg:public void study(){}
public void play(){}
2.构造方法(构造器,构造函数)
格式:public 类名(数据类型 参数,...){}
用途:
(1)实例化对象
例如:
public class Student{
private String name;
//构造方法
public Student(String n){
name=n;
}
}
public class Manager{
public static void main(String []args){
//实例化一个Student类对象
Student stu=new Student("张三");
stu.study(5);
}
}
(2)
属性赋初值
Student stu=new Student("张三");
stu对象刚开始时存放在计算机的内存中,具体位置为内存的栈中,而new关键字
则开辟新的内存空间具体为堆,堆中存放了对象的属性方法,虽然属性和方法不被返回,
但是,new关键字会返回一个首地址给对象.
(3)普通方法与构造方法的区别:
两者的格式不同,普通方法一般要写返回值的类型,而构造方法格式中不需要返回值类型;
//普通方法
public void study(){}
//构造方法
public Student(){}
普通方法是对象的行为,而构造方法的目的是为了实例化一个对象;
3.方法重载
条件:
方法名必须一致
public void pk(){}
public void pk(Hero h){}
区别:
所带参数的数据类型,参数个数,参数的顺序必须要有一个不同
注意:方法法重载不仅适用于普通方法同样也适用于构造方法,一个行为支配多个对象的时候,这时
需要使用方法的重载
4.this关键字
(1)用途:
1>用于区分参数与属性
private String name;
public String setName(String name){
this.name=name;
}
public void getName(){
return name;
}
2>调用构造方法
//构造方法
public Student(){
this("lol");
}
public Student(String name){
this.name=name;
}
//创建student类对象
Student stu=new Student();
//创建Student类对象
Student stu1=new Student("dota");
当调用该构造方法的时候,程序的结果是"stu"会显示"lol",因此,可以看出this();可以调用构造方法
4.值传递
(1)java中的数据类型
1>基本数据类型:byte
int
short
long
float
double
char char a='c'; char a='杰'; char a='bc'报错
boolean (true 与false)
2>引用数据类型 对象类型 类类型 复杂的数据类型 自定义类型
所有的class类型,interface ,abstract class 以及数组类型都属于该类型
(2)适用的数据类型数组
基本数据类型
(3)传递的内容和如何传递
一般是采用直接赋值操作
5.引用传递
(1)适用的数据类型
引用数据类型(类类型,抽象类,接口,数组)
(2)传递内容和如何传递
用于对象之间的传递,一般是在实例化对象的时候,new关键字在栈中开辟空间,构造方法虽然无返回值数据类型,
但是可以返回一个首地址给对象,
eg:
Student stu = new Student();
stu1.setName("张三");
stu2.setName("李四");
stu2=stu1;
stu2.study();
System.out.println(name+"在学习中!");
此程序运行的结果:张三在学习中!
总结:一般在有对象存在的地方都会用到引用传递.
相关推荐
- **初始化对象**:构造方法的主要目的是为新创建的对象设置初始值,确保对象处于可使用的状态。 - **避免重复代码**:如果多个对象需要相同的初始化操作,构造方法可以避免在多个地方编写重复的代码。 ### 2. 构造...
通过在构造方法中设置初始值,可以确保对象在使用前已经被正确初始化,从而避免潜在的错误和异常。 #### 三、构造方法的分类 构造方法可以根据参数的不同分为无参构造方法和有参构造方法。无参构造方法用于简单的...
当创建`Person`对象时,内存分配会涉及为对象分配空间,并根据传递的参数调用构造方法,将这些参数赋值给相应的成员变量。 内存分配在Java中主要发生在堆和栈中。栈内存主要存储基本类型的变量和对象引用,而堆内存...
构造方法与类名相同,没有返回类型,且可以有不同参数列表,以便在创建对象时提供不同的初始化方式。Java允许我们定义多个构造方法,这就是所谓的构造方法重载。通过重载,我们可以根据需要提供不同的构造函数,以...
在C#编程语言中,了解值传递和引用传递的概念至关重要,因为这直接影响到函数或方法如何处理参数。本文主要探讨这两个概念以及与之相关的知识点。 首先,值传递是指当一个方法或函数调用时,实际参数(即调用时提供...
- 为了在创建对象时传递初始数据,我们可以定义带参数的构造方法。这样,我们可以根据传入的参数来设置对象的状态。 - 带参数的构造方法可以有多个,只要参数列表不同,它们就不会冲突。 4. **构造方法的重载**:...
构造方法可以有参数,这样就可以在创建对象时传递初始值。例如,如果我们有一个名为`Circle`的类,用于表示圆,我们可以定义一个带有半径参数的构造方法: ```java public class Circle { float radius; // 带...
在Java中,构造方法与类名相同,没有返回类型,并且可以具有参数,以便根据传入的值设置对象的属性。C#中也类似,但可以标记为`static`的构造函数,称为静态构造函数,用于初始化类的静态数据。 接着,我们探讨构造...
- Java中的方法调用采用的是“值传递”而非“引用传递”。 - 对于基本数据类型,传递的是该值的一个副本;对于引用类型,传递的是指向对象的引用的副本。 #### 2. 参数传递的实例 - 考虑以下`Text1`类中的`add`方法...
通过本文的学习,读者应能深刻理解Java中构造方法的作用和使用方式,掌握构造方法与普通方法的区别,学会如何定义带参构造方法来初始化对象的属性,并理解实例化对象时构造方法自动调用的原理。此外,通过实际编程...
在实例化对象时,可以通过对象初始化器一次性设置多个属性的值,这与构造方法结合使用可以提高代码的可读性: ```csharp Student student = new Student("张三", 20) { Gender = "男" }; Car car = new Car("宝马",...
4. **参数可选**:构造方法可以带有参数,允许在创建对象时传递初始值,也可以没有参数,提供一个默认的构造方式。 在农业信息系统的人员信息管理部分,可能需要创建教师和学生类。例如,教师类(Teacher)包含姓名...
本文主要探讨的是Java语言中的一个重要概念——构造方法在教学过程中的应用与理解。构造方法是类的一个特殊方法,用于初始化新创建的对象。在Java中,每一个类都可以有一个或多个构造方法,它们在对象创建时被调用,...
这是`this`关键字的一个典型应用,它将`d`和`m`的值传递给`this`所代表的对象(即当前正在创建的对象)的两个参数构造方法,从而避免了重复设置`day`和`month`的代码。然后,这个构造方法继续设置`year`的值。 这里...
同时,可以通过构造方法传递参数初始化对象的属性。 ```java Person person = new Person("Tom", 25); ``` ### 4. static变量 `static`变量是类级别的变量,被类的所有对象共享。修改`static`变量会影响到所有...
1. 在源页面的代码中用需要传递的名称和值构造 URL 地址。 2. 在源页面的代码用 Response.Redirect(URL); 重定向到上面的 URL 地址中。 3. 在目的页面的代码使用 Request.QueryString["name"]; 取出 URL 地址中传递...
了解View的构造方法及其参数对于优化布局加载和理解Android系统的工作原理至关重要。本文将深入解析`Android view构造方法第3个参数详解 demo`,并提供相关的实践示例。 首先,我们来看一下View类的主要构造方法: ...
1. **值传递**:在构造函数中使用值传递时,函数接收的是参数值的副本。这意味着即使在构造函数内部改变了这个副本,也不会影响到调用构造函数时传入的原始值。例如,在C++中,如果参数是基本类型(如int或double)...