Java基础-8构造方法

一)、构造方法: 

  在之前我们提到对象的概念以及对象的实例化等,在这里简单回顾下:

  Man man = new Man();

  语句创建一个对象,new可以理解成创建一个对象的关键字,通过new关键字为对象分配内存,初始化实例变量,并调用构造方法。

  Man()形式上和调用方法相同,而这个Man()就是一个特殊的方法叫做构造方法;

  构造方法在代码中并没有看到这个方法的定义原因是在没有定义构造方法的时候,JAVA会隐式的创建一个无参的默认构造方法

  构造方法有以下几个特征:1、具有和类相同的名称;2、不含有返回值;3、不能在方法中使用return返回一个值

  在一个类中具有上述特征的方法就是构造方法。

  在这里需要特别注意的是,在构造方法里不含返回值的概念不同于void,依然以Man类为例,public Man(){}是构造方法,如果写成public void Man(){};就不是构造方法了。

  示例:

   /**
    * 构造方法
    **/
   public Box(String eat, String sleep, String speak)
   {
      this.EAT= eat;
      this.SLEEP= sleep;
      this.SPEAK= speak;
   }
   /**
    * 非构造方法
    **/
public void Man(){
      System.out.println("输出~") ;
}

  构造方法一共分为两类,一类是当程序没有定义构造方法时,系统自己生成的默认的构造方法,这个默认的构造方法没有参数,方法体中也没有任何代码,即什么也不做,但是会对类成员变量进行默认的初始化。

  另一类是程序自己定义的构造方法,可以根据自己的要求对类成员变量进行初始化,也叫做参数化构造方法。需要注意:一旦程序自己定义了构造方法,系统就不会创建默认的构造方法了。

  在构造方法中常用到关键字 this ,this 表示的是当前对象,如在同一个类中成员调用类中其他成员;如构造方法使用this关键字为当前成员变量赋值;

  this 关键字既可以访问当前对象的数据成员,也可以访问当前对象的成员方法;

二)、对象的生命周期:

  类定义之后,只是产生了对事物的描述,并没有生成事物的实例。所以必须对类进行实例化,来生成客观事物的内存映像,这就是对象的创建。对象创建之后必定要显示它的一些特征和表现一些行为,这就是对象的使用。当对象不再使用时(没有任何引用变量指向它时),对象就变成了垃圾,这就是对象的消亡。

  当程序的某个部件完成使命后,程序员往往弃之不顾,这是很危险的,这些垃圾会占用系统资源,造成内存泄漏等,所以清理垃圾是必要的。Java垃圾回收的偶然性,如果在一个对象成为垃圾时需要马上释放,可以使用System.gc();来强制启动垃圾回收器回收垃圾。

原文地址:https://www.cnblogs.com/yangfawang/p/10305894.html

时间: 2024-11-07 06:08:31

Java基础-8构造方法的相关文章

java基础_ 构造方法注意的地方

java中的构造方法是用来初始化一个对象的,并为为实例变量赋予合适的初始值.因此构造方法不需要返回类型. 构造方法必须满足以下语法规则: (1)方法名必须与类名相同: (2)不要声明返回类型: (3)不能被static.final.synchronized.abstract和native修饰: (4)构造方法不能被子类继承,所以用final和abstract修饰没有意义. 构造方法的创建如下示例: public class Demo { private int x; public Demo()

八、java基础之构造方法

/*一.关于java类的构造方法1.构造方法语法: [修饰符列表]构造方法方法名(形式参数列表){ 方法体; }2.构造方法的方法名必须和类名一致3.构造方法的作用: 第一:创建对象 第二:初始化成员变量 4.构造方法应该如何调用: new 构造方法名(实参):在堆中开辟空间,存储对象 5.如果一个类没有提供构造方法,系统会默认提供无参数构造方法: 如果一个类中已经手动提供了构造方法,name系统不会提供无参数构造方法6.构造方法构成了方法重载7.成员变量什么时候赋值? 只有在调用构造函数时候,

Java基础之构造方法及其应用

构造方法是一种特殊的方法,它是一个与类同名且无返回值类型(连void也不能有)的方法. 对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化. 当类实例化一个对象时会自动调用构造方法.构造方法和其他方法一样也可以重载. 构造方法分为两种:无参构造方法 有参构造方法 类中必定有构造方法,若不写,系统自动添加无参构造.(接口不能被实例化,所以接口中没有构造方法.) 实例演示:计算坐标点的距离 实体类Point代码: 1 public class Point { 2 3 // 点的属性 横纵

【Java基础】构造方法调用构造方法

从一个程序开始: 1 class dog 2 { 3 private String name; 4 private String color; 5 private int age; 6 7 dog(String name) 8 //仅给name赋值 9 { 10 this.name=name; 11 } 12 dog(String name,String color) 13 //仅给name,color赋值 14 { 15 this.name=name;//但之前有过类似代码 16 this.c

JAVA基础学习-构造方法

通过一个类创建一个对象,这个过程叫做实例化 实例化是通过调用构造方法(又叫做构造器)实现的 方法名和类名一样(包括大小写) 没有返回类型 实例化一个对象的时候,必然调用构造方法 如果不写,就会默认提供一个无参数的构造方法 一旦提供了一个有参的构造方法 同时又没有显式的提供一个无参的构造方法 那么默认的无参的构造方法,就“木有了“ 和普通方法一样,构造方法也可以重载 如果要在一个构造方法中,调用另一个构造方法,可以使用this() 原文地址:https://www.cnblogs.com/leem

1.28 Java基础总结 ①方法重载②构造方法

1.28 Java基础总结 ①方法重载②构造方法 一.方法的重载在同一个类中,方法名相同,形参列表不同访问修饰符.返回类型和是否重载无关:按顺序对应的形参列表类型不同即可 二.构造器在类创建一个实例时被调用,构造方法只能用new关键字调用目的:初始化实例,初始化类属性(0,0.0,null,false)无返回值,和类名一致,用来构造对象作用:为对象分配内存, 创建并初始化成员变量(通过类创建,所以可以在static方法中调用构造方法) 返回引用,引用.属性:引用.方法(所以无返回值) 三.构造方

java基础知识总结

/* java基础语言总结 */ 1.基本数据类型有哪些 byte short boolean char int float long double //测试基本数据类型所占用的字节数,可以通过其包装类进行实现 System.out.println("byte的大小"+Byte.SIZE/8); System.out.println("short的大小"+Short.SIZE/8); System.out.println("char的大小"+Ch

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用 成员变量(属性)①类中添加成员变量 访问修饰符 类型 变量名 private String name ②实例化对象调用类的构造方法类构造对象,Teacher one = new Teacher(): 有static的可以直接调用,因为static是类级别的 ③JavaBean里边一般规则应该有公共的无参构造应该有符合命名规范的get/set方法 ④对象的回收:没有任何引用指向该对象时,GC会回收 主动回收:对象 = nu

Java基础和面向对象

Java基础和面向对象 一.数据类型和运算符 标识符 组成:字母.数字.下划线.$ 首字母:不能是数字 见名知义 不能是关键字(48个) 正确的:name.name123.age._name.$name 错误的:1name.public.123.na%me 标识符主要给一个元素起名字,需要符合起名字的以上4种规则.比如说,类的名字:首字母大写:变量名称:小写:方法名称:驼峰命名:数组名称.接口名称.集合名称. //你定义为汉字也可以,不过不推荐,因为国际语言以English为主.为了面向世界,使