构造器含义:

是指使得JVM在构造对象的时候,帮助进行成员变量的初始化的方法。

构造器(构造方法)格式:

1.对于构造方法而言,方法的名称是固定的,和类名相同。

2.对于构造方法而言,它没有返回值,而且甚至没有方法定义时的返回值类型。

3. 对于一个普通类而言,如果我们没有在类定义中添加任何构造方法,

JVM主动帮我们在类定义中添加一个默认构造方法。

语法格式:

修饰符 类名(参数列表){

初始化语句;

}

构造器特征:

1.它具有与类相同的名称。

2.它不声明返回值类型,与声明为void不同。

3.不能被static、final、 synchronized、 abstract、 native修饰。

4.不能有return语句返回值。

构造器作用:

1.创建对象,给对象进行初始化。

2.例如 Order x = new Order(); Person y = new Person("Peter",15);

构造器分类:

1.隐式无参构造器(系统默认提供)。

2.显式定义-一个或多个构造器(无参、有参)。

注意事项:

1.在Java语言中, 每个类都至少有一个构造器。

2.默认构造器的修饰符与所属类的修饰符一致。

3.一旦显式定义了构造器,则系统不再提供默认构造器。

4.一个类可以创建多个重载的构造器。

5.父类的构造器不可被子类继承。

构造器重载:

1.构造器一般用来创建对象的同时初始化对象。

2.构造器重载使得对象的创建更加灵活,方便创建各种不同的对象。

 public class ContructorDemo {
   public static void main(String[] args) {
     int intValue = 10;
     MyClass myClass = new MyClass(intValue);
     System.out.println(myClass.a);

     //构造方法的重载
     intValue = 100;
     String name = "张三";
     String school = "MIT";

     myClass = new MyClass(intValue, name, school);
     System.out.println(myClass.a);
     System.out.println(myClass.name);
     System.out.println(myClass.school);
   }
 }

 class MyClass {
   int a;
   String name;
   String school;

   //通过构造方法,让JVM帮助完成成员变量的初始化
   public MyClass (int intValue) {
     a = intValue;
   }

   public MyClass (int intValue, String str) {
     a = intValue;
     name = str;
   }

   public MyClass (int intValue, String str, String s) {
     a = intValue;
     name = str;
     school = s;
   }
 }

最新文章

  1. 深入分析,理解jQuery.Deferred源码
  2. 【iOS】XcodeColors插件与CocoaLumberjack工具
  3. Unity3D ShaderLab 简单的立方体图反射
  4. hdu1874 畅通工程续
  5. 3、JPA一些常用的注解
  6. 基于ActiveMQ的点对点收发消息
  7. Linux内存映射(mmap)系列(1)
  8. (原+转)ubuntu终端输出彩色文字
  9. MySQL推出Applier,可实时复制数据到Hadoop
  10. poj 1687 Buggy Sat 简单计算几何
  11. php生成雪花图像(不美观请见谅)
  12. Qt+mpg123+openal播放MP3流
  13. Salesforce 超大量数据导入优化策略
  14. mysql创建和调用out参数的存储过程
  15. codevs 2033 邮票
  16. Python复习笔记(四)高阶函数/返回函数/匿名函数/偏函数/装饰器
  17. node服务器中打开html文件的两种方法
  18. Javascript之类型转换(二)
  19. python 函数传递可变参数的用法
  20. Maven上传jar包到私服

热门文章

  1. 【JQ】toggle / slideToggle / fadeToggle 的区别
  2. MySQL存储引擎MyISAM与InnoDB区别
  3. uni-app 快速认识
  4. 2018-8-10-win10-uwp-后台获取资源
  5. H3C PPP协议的组成
  6. java抽象类的体现-模板模式
  7. requires php ~7.1 -> your PHP version (7.0.18) does not satisfy that requirement
  8. css图片填充的几种方式
  9. 2019-4-10-win10-uwp-自定义标记扩展
  10. [板子]KMP