Java构造器(构造方法)与方法区别

构造器,又称为构造方法。构造器用于构造该类的实例,也就是对象。

格式如下:[修饰符]  类名 (形参列表){//n条语句}

构造方法是一种特殊的方法,与一般的方法区别:   

1.构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。  

2.构造方法的调用是在创建一个对象时使用new操作进行的。构造方法的作用是初始化对象。 

3.不能被static、final、synchronized、abstract和native修饰。构造方法不能被子类继承。  

构造方法可以被重载。没有参数的构造方法称为默认构造方法,与一般的方法一样,构造方法可以进行任何活动,但是经常将他设计为进行各种初始化活动,比如初始化对象的属性。 

在Java中,任何变量在被使用前都必须先设置初值.Java提供了为类的成员变量赋初值的专门功能

构造方法(constructor)它的特殊性反映在如下几个方面:   

(1)构造方法名与类名相同.   

(2)构造方法不返回任何值,也没有返回类型.   

(3)每个类可以有零个或多个构造方法.   

(4)构造方法在创建对象时自动执行,一般不能显式地直接调用.   

原文地址:https://www.cnblogs.com/weibanggang/p/10072642.html

时间: 2024-11-08 12:20:23

Java构造器(构造方法)与方法区别的相关文章

java中构造方法和方法全面解析

java中构造方法和方法全面解析 我相信大多说人都对构造方法.方法不陌生,而且很了解,但我也相信有很多像我这样的没有一个很好很清晰很全面的认识,今天就把它整理如下,希望能给大家带来点方便与帮助,也希望大家多多讨论.          构造方法和方法的区别: 构造方法要与类名相同,无返回类型,在类初始化的时候调用.      方法最好与类名不同,对象调用,静态方法可用类名.方法(). 构造器和方法在下面三个方面区别:修饰符,返回值,命名. 1.和方法一样,构造器可以有任何访问的修饰: public

Java构造器以及与方法的区别

功能不同: 构造器是为了创建一个类的实例:命名与类相同:可以有任何访问的修饰: public, protected, private或者没有修饰,不能有以下非访问性质的修饰: abstract, final, native, static, 或者 synchronized:无返回值. 方法是为了实现类的一个动作. 以下为复制别人的博客内容: "this"的用法构造器和方法使用关键字this有很大的区别.方法引用this指向正在执行方法的类的实例.静态方法不能使用this关键字,因为静态

java构造器内部多态方法

/** * Created by Administrator on 2017/3/7. */ /** * @author zhenghong * @date 2017-03-07-21:21 **/public class TestC { public static void main(String []args) { new Graph(5); }}class Grp{ void draw() { System.out.println("draw...."); } Grp() { d

Java构造器和方法的区别(转自http://www.blogjava.net/weidagang2046/articles/3430.html)

摘要要学习Java,你必须理解构造器.因为构造器可以提供许多特殊的方法,这个对于初学者经常混淆.但是,构造器和方法又有很多重要的区别.原作者:Robert Nielsen 原站:www.javaworld.com 我们说构造器是一种方法,就象讲澳大利亚的鸭嘴兽是一种哺育动物.(按:老外喜欢打比喻,我也就照着翻译).要理解鸭嘴兽,那么先必须理解它和其他哺育动物的区别.同样地,要理解构造器,那么就要了解构造器和方法的区别.所有学习java的人,尤其是对那些要认证考试的,理解构造器是非常重要的.下面将

Java学习之道:Java构造器和方法的区别

摘要 要学习Java,你必须理解构造器.因为构造器可以提供许多特殊的方法,这个对于初学者经常混淆.但是,构造器和方法又有很多重要的区别. 原作者:Robert Nielsen 原站:www.javaworld.com 我们说构造器是一种方法,就象讲澳大利亚的鸭嘴兽是一种哺育动物.(按:老外喜欢打比喻,我也就照着翻译).要理解鸭嘴兽,那么先必须理解它和其他哺育动物的区别.同样地,要理解构造器,那么就要了解构造器和方法的区别.所有学习java的人,尤其是对那些要认证考试的,理解构造器是非常重要的.下

java 学习之List 的 add 与set方法区别

/** * 在List集合中众多方法中,add(int index,Object obj)方法与set(int index,Object e)方法不易区分 * ,通过下面实例,可以看出两个方法中的区别 */ package gao; import java.util.Iterator; import java.util.LinkedList; import java.util.List; public class CollectionDemo { public static void main(

Java构造器内部的多态方法

本文主要详解java构造器内部的多态方法,更多Java技术知识,请登陆疯狂软件教育官网. 我们知道,动态绑定的调用是在运行时才决定的,对象无法知道到底调用的是哪个类的方法. 当我们在构造器中调用动态绑定的方法,就会用到该方法被覆盖之后的定义.但是这种调用的效果难以预计,因为被覆盖的方法在对象被完全构造之前就会被调用.我们先来看看下面这段代码: Java代码 class Base{ private String name = "base"; Base(){ tellName(); pri

java中==与equal()方法的区别

java中==与equal()方法的区别 java中==比较的是地址,equal比较的是值. 示例: 1 2 3 4 Integer a1 = new Integer(456);//实例化一个对象 Integer a2 = new Integer(456);//实例化一个对象 System.out.println(a1.equals(a2));//这里比较的是值,都是456,结果是true System.out.println(a1==a2);//这里比较的是地址,因为是2个对象,所以地址不同,

Java构造器内部的多态方法的行为

Java构造器调用的层次结构带来了一个有趣的两难问题.如果在一个构造器的内部调用正在构造的对象的某个动态绑定方法,那会发生什么情况? class Glyph{ void draw(){System.out.println("Glyph.draw()");} Glyph() { System.out.print("Glyph() before draw()"); draw(); System.out.println("Glyph() after draw()