java构造函数的问题,需前辈指点 各位老师,构造函数这块我怎么也看不懂啊,能帮我详细的讲解一下吗?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 每创建一个类的实例都去初始化它的所有变量是乏味的。如果一个对象在被创建时就完成了所有的初始工作,将是简单的和简洁的。因此,Java在类里提供了一个特殊的成员函数,叫做构造函数(Constructor)。 一个构造函数是对象被创建时初始对象的成员函数。它具有和它所在的类完全一样的名字。一旦定义好一个构造函数,创建对象时就会自动调用它。构造函数没有返回类型,即使是void类型也没有。这是因为一个类的构造函数的返回值的类型就是这个类本身。构造函数的任务是初始化一个对象的内部状态,所以用new操作符创建一个实例后,立刻就会得到一个清楚、可用的对象。 构造方法是一种特殊的方法,具有以下特点。 (1)构造方法的方法名必须与类名相同。 (2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。 (3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。 (4)构造方法不能由编程人员调用,而要系统调用。 (5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。 (6)构造方法可以重载,以参数的个数,类型,或排列顺序区分转载的! 不妨去用google搜索一下吧,网上有很多资料可以查询的 主要用于初始化./和在继承时.用..super()方法,还有做为一般的方法..不过要好好理解,.它的用途的,.~~~ 对象是构造函数创建的?还是类创建的啊?为什么构造函数设定为private以后就不可以创建对象了? 构造方法是为了创建对象的.比如说 class Hello{ String str = ""; Hello(){ //这个就是他的构造方法如果,这个构造方法不是你自己写的那么他就默认的一个 //所以没你你调用这个类的时候 可以这样 Hello hello = new Hello(); str = " Hello World !"; } public static void main(String args[]){ Hello hello =new Hello(); System.out.println(hello.str); //结果就是 Hello World ! } }第二你也可构建一个带参数的 构造函数!例如!class Hello{ String str = ""; Hello(String strone){ str = strone; // } public static void main(String args[]){ Hello hello =new Hello("Hello world !"); System.out.println(hello.str); //结果就是 Hello World ! //其实每一个类,如果你不自己定义构造函数呢,他就会自己默认一个不带参数的构造函数 //如果你自己定义了构造函数,你想获得这个对象必须要调用你自己定义好的构造函数,系统认为你已经 //知道如何使用构造函数,所以就不帮助你产生 默认的构造函数了, //构造函数还可以个 类的属性赋值! str = strone ; 就是哦! }} 构造函数就是你在创建对象的时候自动调用的函数,即在New那里,构造函数就开始执行了,New完了,默认的构造函数也就执行完了 路过询问:class Hello{ String str = ""; Hello(String strone){ str = strone; // this.strone=str;这两个有什么不一样? } 谢谢~~~~~ str = strone; // this.strone=str;这两个有什么不一样? this.strone 不可以是不是想表达 this.str=strone的区别呀? 1class Hello{ 2 String str = ""; 3 Hello(String str){ 4 str = str;//没有任何意义,因为这样是把3行里的str赋值给3行的str; 5 this.str = str;//把3行里出现的str赋值给2行里的str; 一个是成员属性,一个是传进来的参数,是不同 //的东西6 } 7} Hibernate中间表添加修改数据的一个问题. 在线等。。Applet在IE中无法监听http端口,急啊~ JDK版本编译问题 java Canvas已经添加到JFrame里 但不知道如何在Canvas上输入字体 arraylist定义问题 接口的一个问题 请问Float转成float怎么转? 请多关照 http://www.XBitSoft.Net 出错了。。。为什么啊? 怎样得到Graphics类的对象来画图,用什么样的子类 有关word 转 pdf 的问题? 写一个登陆框 用户和 密码由记事本中读取
一个构造函数是对象被创建时初始对象的成员函数。它具有和它所在的类完全一样的名字。一旦定义好一个构造函数,创建对象时就会自动调用它。构造函数没有返回类型,即使是void类型也没有。这是因为一个类的构造函数的返回值的类型就是这个类本身。构造函数的任务是初始化一个对象的内部状态,所以用new操作符创建一个实例后,立刻就会得到一个清楚、可用的对象。 构造方法是一种特殊的方法,具有以下特点。
(1)构造方法的方法名必须与类名相同。
(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
(4)构造方法不能由编程人员调用,而要系统调用。
(5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。
(6)构造方法可以重载,以参数的个数,类型,或排列顺序区分
转载的!
和在继承时.用..super()方法,
还有做为一般的方法..
不过要好好理解,.它的用途的,.~~~
比如说
class Hello{
String str = ""; Hello(){
//这个就是他的构造方法如果,这个构造方法不是你自己写的那么他就默认的一个
//所以没你你调用这个类的时候 可以这样 Hello hello = new Hello(); str = " Hello World !"; } public static void main(String args[]){
Hello hello =new Hello();
System.out.println(hello.str);
//结果就是 Hello World !
} }第二你也可构建一个带参数的 构造函数!例如!class Hello{
String str = ""; Hello(String strone){
str = strone; // } public static void main(String args[]){
Hello hello =new Hello("Hello world !");
System.out.println(hello.str);
//结果就是 Hello World !
//其实每一个类,如果你不自己定义构造函数呢,他就会自己默认一个不带参数的构造函数
//如果你自己定义了构造函数,你想获得这个对象必须要调用你自己定义好的构造函数,系统认为你已经
//知道如何使用构造函数,所以就不帮助你产生 默认的构造函数了,
//构造函数还可以个 类的属性赋值! str = strone ; 就是哦!
}}
String str = ""; Hello(String strone){
str = strone; // this.strone=str;这两个有什么不一样? } 谢谢~~~~~
是不是想表达 this.str=strone的区别呀?
1class Hello{
2 String str = ""; 3 Hello(String str){
4 str = str;//没有任何意义,因为这样是把3行里的str赋值给3行的str;
5 this.str = str;//把3行里出现的str赋值给2行里的str; 一个是成员属性,一个是传进来的参数,是不同 //的东西
6 }
7}