zoukankan      html  css  js  c++  java
  • Java面向对象之构造函数 入门实例

    一、基础概念

      1.什么时候定义构造函数:

        当对象创建时,需要对象必须具备的内容,通过构造函数完成。

      2.一般函数和构造函数的区别:

        定义上:构造函数只为对象的初始化,只执行一次。一般函数定义对象应该具备的功能。可以被调用多次。

        运行上:构造函数在对象一创建,就会执行。一般函数是只有被对象调用才执行。

      3.构造函数的格式要求:

         (1). 函数名和类名相同。

         (2). 没有返回值类型。

                 (3). 没有具体的返回值。

      4.构造函数的作用:就是对对象进行初始化。

      5.揭秘:

        (1). class定义的类中,如果没有声明任何构造函数,类中会默认有一个空参数的构造函数。

        (2). 如果在class类中自定义了构造函数,默认的构造函数就没有了。构造函数在类中有多个的情况下,是以重载的形式存在的。

      6.注意:

        (1). 构造函数中也可以有return语句,用于结束初始化动作。

        (2). 构造函数的前面加了void,编译可以通过,但是不再是构造函数,而是一般函数。(建议不要这样写)


    二、实例代码

      要求用构造函数的重载来实现,Person对象一旦建立就可能有一个公共的名字,或者有一个自己的名字,或者有一个自己的名字和年龄。并打印出来。

     1 class Person
     2 {
     3     private String name;
     4     private int age;
     5     
     6     //多个构造函数在同一个Person类中的重载形式
     7     
     8     //定义一个构造函数,用于给Person对象初始化。
     9     //Person 对象初始化就有姓名。
    10     Person(String s)
    11     {
    12         name = s;
    13     }
    14     //Person 对象初始化就有姓名和年龄。
    15     Person (String s,int a)
    16     {
    17         name = s;
    18         age = a;
    19     }
    20     //Person 对象初始化什么也没有,构造一个空参的构造函数。
    21     Person ()
    22     {
    23         name = "bady";
    24     }
    25     
    26     public void show1()
    27     {
    28         System.out.println("name="+name);
    29     }
    30     public void show2()
    31     {
    32         System.out.println("name="+name+",age="+age);
    33     }
    34 }
    35 
    36 
    37 class PersonDemo2
    38 {
    39     
    40     public static void main (String[] args)
    41     {
    42     //对象会自动调用对应的构造函数,进行初始化。
    43         Person p1 = new Person("xiaoming");
    44         p1.show1();
    45         Person p2 = new Person("xiangming",20);
    46         p2.show2();
    47         Person p3 = new Person();
    48         p3.show1();
    49     }
    50 }

    三、代码运行

      

  • 相关阅读:
    字符编码
    IO流技术
    TreeMap使用和Comparable比较
    Collections工具类
    使用迭代器进行遍历时
    238. 除自身以外数组的乘积
    python 字典按键、值排序
    collections.Counter用法
    442. 数组中重复的数据
    1395. 统计作战单位数
  • 原文地址:https://www.cnblogs.com/zhuxr/p/8798828.html
Copyright © 2011-2022 走看看