博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
构建方法
阅读量:6271 次
发布时间:2019-06-22

本文共 1206 字,大约阅读时间需要 4 分钟。

概念

从字面上理解即为构建创造时用的方法,即就是对象创建时要执行的方法。既然是对象创建时要执行的方法,那么只要在new对象时,知道其执行的构造方法是什么,就可以在执行这个方法的时候给对象进行属性赋值

 

 

构建方法

l  构造方法的格式:

修饰符 构造方法名(参数列表)

{

}

l  构造方法的体现:

n  构造方法没有返回值类型。也不需要写返回值。因为它是为构建对象的,对象创建完,方法就执行结束。

n  构造方法名称必须和类名保持一致。

n  构造方法没有具体的返回值。

 

 

默认构造方法和细节

class  Person {

    //如果没有显示指定构造方法,编译会在编译时自动添加默认的构造方法

    //public Person(){}  //空参数的默认构造方法

}

 

当在描述事物时,要不要在类中写构造方法呢?这时要根据描述事物的特点来确定,当描述的事物在创建其对象时就要明确属性的值,这时就需要在定义类的时候书写带参数的构造方法。若创建对象时不需要明确具体的数据,这时可以不用书写构造方法(不书写也有默认的构造方法)。

l  构造方法的细节:

1、一个类中可以有多个构造方法,多个构造方法是以重载的形式存在的

2、构造方法是可以被private修饰的,作用:其他程序无法创建该类的对象

 

  构造方法和一般方法区别

一般方法是在对象创建后,需要使用时才被对象调用,并可以被多次调用。

构造方法只能创建一次;

 

实例

class Person {

    // Person的成员属性age和name

    privateintage;

    private String name;

 

    // Person的构造方法,拥有参数列表

    Person(int a, String nm) {

        // 接受到创建对象时传递进来的值,将值赋给成员属性

        age = a;

        name = nm;

    }

}

 

实例二

class Person {

    // Person的成员属性age和name

    privateintage;

    private String name;

 

    // Person的构造方法,拥有参数列表

    Person(int a, String nm) {

        // 接受到创建对象时传递进来的值,将值赋给成员属性

        age = a;

        name = nm;

    }

 

    publicvoid speak() {

        System.out.println("name=" + name + ",age=" + age);

    }

}

 

class PersonDemo {

    publicstaticvoid main(String[] args) {

        // 创建Person对象,并明确对象的年龄和姓名

        Person p2 = new Person(23, "张三");

        p2.speak();

    }

}

 

 

 

转载于:https://www.cnblogs.com/1997WY/p/10431385.html

你可能感兴趣的文章
leetcode 题解 || Valid Parentheses 问题
查看>>
将图片转成base64字符串并在JSP页面显示的Java代码
查看>>
什么是WeakHashMap--转
查看>>
js 面试题
查看>>
第二十二节,三元运算
查看>>
Yacc 与 Lex 快速入门
查看>>
Unity中HDR外发光的使用
查看>>
Flume负载均衡配置
查看>>
Ajax详解
查看>>
Ubuntu C/C++开发环境的安装和配置
查看>>
百世汇通快递地区选择插件,单独剥离
查看>>
Linux系统调用---同步IO: sync、fsync与fdatasync【转】
查看>>
【MyBatis学习06】输入映射和输出映射
查看>>
[LeetCode] Decode String 解码字符串
查看>>
数字逻辑的一些基本运算和概念
查看>>
ant重新编译打包hadoop-core-1.2.1.jar时遇到的错
查看>>
【★★★★★】提高PHP代码质量的36个技巧
查看>>
3 weekend110的配置hadoop(格式化) + 一些问题解决 + 未免密码配置
查看>>
JavaScript Creating 对象
查看>>
Java compiler level does not match the version of the installed Java project facet.(转)
查看>>