(11.13)Java小知识!

今天想要与大家分享一下有关于构造方法的知识!

构造方法的定义与作用

构造方法是一种特殊类型的方法。当一个对象被创建的时候,构造方法用来初始化对象,也就是说构造方法其实是一个名词而不是动词,像我刚刚开始接触的时候会把构造方法当成动词理解,就比较麻烦。构造方法和它所在类的名字相同,但构造方法没有返回值,因此不能再构造方法中使用return语句返回一个值。

构造方法的语法格式如下:

[访问修饰符]<类名>([参数列表]){
    构造方法的语句体
}

  其中,修饰符可以为public,protect,private;参数列表为参数,可以是空的;构造方法的语句体也可以是空的。

构造方法在程序设计中非常有用,他可以为类的成员变量进行初始化。当一个类的实例对象刚产生时,这个类的构造方法就会被调用,可以在这个方法中加入要完成初始化工作的代码。无论是否自定义了构造方法,所有的类都有构造方法,因为Java自动提供了一个默认构造方法,这个默认构造方法没有参数,在其方法体中也没有任何的代码,它把所有成员初始化为0,除此之外什么都不做。然而一旦我们定义了自己的构造方法,默认构造方法就会失效。

以下是一个使用构造方法的例子:

//一个简单的构造方法
class Demo{
    int x;
    Demo(){//构造方法
        x=1;
      }
}

  如何调用构造方法来初始化一个对象:

public class MyDemo{
    public static void main (String args[]){
            Demo a = new Demo();
            Demo b = new Demo();
             System.out.println(a.x+" "+b.x);
    }
}//运行结构为 :1  1

  以上的构造方法是无参构造方法,以下为大家编写一个有参数的构造方法:

class Demo {//一个简单的构造方法
    int x;
    Demo(int a){//有参数的构造方法
        x=a;
    }
}

  有参构造方法的调用类似无参构造方法:

public class MyDemo{
    public static void main (String args[]){
            Demo a = new Demo(5);
            Demo b = new Demo(10);
             System.out.println(a.x+" "+b.x);
    }
}//运行结果为:5 10

  下面用一个比较具体的例子来为大家展示构造方法的使用:

class Employee{
	private double employeeSalary = 2000;
	public Employee() {//一个构造方法
		System.out.print("该构造方法已被调用");
	}
	public void getSalary() {
		System.out.println("职员的基本薪水为:"+employeeSalary);
	}
public static class demo{
    public static void main(String[] args){
    	Employee a1 = new Employee();
    	a1.getSalary();
    	Employee a2 = new Employee();
    	a2.getSalary();
    }
}
}//运行结果为:构造方法被调用!职员的基本薪水为:2000.00        构造方法被调用!职员的基本薪水为:2000.00

  通过我们上面列举的实例运行结果我们可以看出,每创建一个Employee对象,Employee()方法都会自动调用一次。这就是构造方法的作用与运行结果。

时间: 2024-08-30 02:02:16

(11.13)Java小知识!的相关文章

java 小知识

1.JDK就是Java Development Kit.是 Java 语言的软件开发工具包(SDK),简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境.基本上每个学java的 人都会先在机器上装一个JDK,那他都包含哪几部分呢?让我们看一下JDK的安装目录.在目录下面有六个文件夹.一个src类库源码压缩包.和其他几个声明文件.其中,真正在运 行java时起作用的是以下四个文件夹:bin.include.lib. jre.现在我们可以看出这样一个关系,JDK包含JRE

(11.06)Java小知识

最近由于课程变化,学习计划也跟着改动,留给我写博客的时间也越来越少.今天晚上没有课,抽空过来图书馆写一写,许久不写感觉都有点陌生了! 今天要和大季家分享的衔接了上一篇博客,是关于方法的嵌套调用与递归调用,是学习方法过程中不可避免的两个版块,大家一起来看一看! 关于嵌套调用: 在Java语言中,各个方法之间是平行的,不存在上一级方法和下一级方法的问题,并且在Java语言中允许在一个方法的定义中出现对另一个方法的调用,于是便有了方法的嵌套调用,即在被调用的方法中又电泳其他方法.例如:执行main方法

[Java]Java小知识总结01

Title>初识Java 1>小概念 IDE (集成开发环境)是一类软件,它将程序开发环境和程序调试环境集合在一起, 一般包括代码编辑器.编译器.调试器和图形用户界面等工具帮助程序员开发软件. JRE (Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库. JDK 是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序. JDK是整个java开发的核心,它包含了JAVA的运

java小知识,驼峰规则

单词之间不以空格.连接号或者底线连结(例如不应写成:camel case.camel-case或camel_case形式).共有两种格式: 1.小驼峰式命名法(lower camel case): 第一个单字以小写字母开始,第二个单字的首字母大写.例如:firstName.lastName. 2.大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName.LastName.CamelCase,也被称为 Pascal 命名法. 补充说明,在JA

每天学点Java小知识【1】

一 Java标识符和关键字 1.标识符 作用:用来标识类名.变量名.方法名.类型名.数组名.文件名的有效字符序列. 组成规则:由字母.下划线.美元符号和数字组成,且第一个字符不能是数字字符.注意:标识符中的字母是区分大小写的,Boy和boy是不同的标识符. 2.关键字 Java语言中一些单词被赋予了一些特定意义,不可以将这些词作为名字来用.其中的关键字有:abstract.boolean.break.byte.case.catch.class.continue.do.double.else.en

Java小知识--length,length(),size()方法详细介绍

Java中length,length(),size()区别 length属性:用于获取数组长度. eg: int ar[] = new int{1,2,3} /** * 数组用length属性取得长度 */ int lenAr = ar.length;//此处lenAr=3 System.out.println("Arr length:"+lenAr); length()方法:用于获取字符串长度. String str = "Hello World Java"; /

java小知识(整理了一些)

判断为空 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.1:if(s == null || s.equals(""));方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法.2:if(s == null || s.length() <= 0);方法三: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 推荐使用方法3:if(s == null || s.isEmpty()); 判断字符串是否为空 StringUtils

JAVA小知识

1.重载 方法的重载是同一个类中多态性的一种表现. 方法重载须遵循如下两条规则 (1)方法名相同. (2)参数列表不同. 注意:方法的返回值类型不能用来区分重载的方法.这是因为当调用一个方法时,返回值的类型是不显示的. 2.重写 方法的重写是子类对父类的方法进行改造. 方法重写必须满足下列条件. (1)子类的方法的名称及参数必须和所重写的方法完全相同. (2)子类的方法返回类型必须和所重写的方法相同. (3)子类方法不能缩小所重写方法的访问权限. (4)子类方法不能抛出比所覆盖方法更多的异常.

开发中遇到的java小知识

今天在优化一个功能的时候遇到了instr与substr函数,之前没有接触过这两个函数,但是今天无意中用到,一查才发现,真是实用的一对兄弟啊. 先来说说substr函数,这个函数返回的是字符串的一部分. substr(string,start,length) 其中string参数为必须参数,要截取的字符串内容. start为必须参数,为起始的位置,可以为正数也可以为负数,正数的话代表从在字符串的指定位置开始:负数代表从字符串结尾的指定位置开始:0代表在字符串中的第一个字符处开始.  length不