class="markdown_views prism-tomorrow-night">
构造方法
构造方法–是专门用来创建对象的方法,当我们通过关键字 new 来创建对象时,其实是在调用构造方法。 格式; public class ="tags" href="/tags/Lei.html" title=类>类名称 (参数class ="tags" href="/tags/Lei.html" title=类>类型 参数名称){ 方法体 } this()是调用本class ="tags" href="/tags/Lei.html" title=类>类不带参构造方法; super()是调用父class ="tags" href="/tags/Lei.html" title=类>类不带参的构造方法; 注意事项; 1.构造方法的名称必须和所在的class ="tags" href="/tags/Lei.html" title=类>类名称完全一样,就连大小写也要一样。
class="prism language-class ="tags" href="/tags/JAVA.html" title=java>java">class="token keyword">public class="token keyword">class class="token class -name">A class="token punctuation">{
class="token keyword">int iclass="token operator">= class="token number">0 class="token punctuation">;
class="token keyword">public class="token function">A class="token punctuation">( class="token punctuation">) class="token punctuation">{
iclass="token operator">= class="token number">2 class="token punctuation">;
class="token punctuation">}
class="token keyword">public class="token function">A class="token punctuation">( class="token keyword">int iclass="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">. iclass="token operator">= iclass="token punctuation">;
class="token punctuation">}
class="token punctuation">}
2.构造方法不要写返回值class ="tags" href="/tags/Lei.html" title=类>类型,连== void == 都不要写。
构造方法的用途
构造方法的用途就是用来创建对象。(初始化对象) 当我们通过关键字 new 来创建对象时,其实是在调用构造方法。 注意; 3.构造方法不能有return一个具体的返回值。 4.如果没有编写任何构造方法,那么编译器将会默认真赠送一个构造方法,没有参数,方法体什么事情都不用做。 举例; public student(){ } 5.一旦编写了一个至少一个构造方法,那么编译器将不再赠送。 6.构造方法也是可以重载的。(重载–方法名称相同,参数列表不同)
class="prism language-class ="tags" href="/tags/JAVA.html" title=java>java">class="token keyword">public class="token keyword">class class="token class -name">A class="token punctuation">{
class="token keyword">private class="token keyword">int ageclass="token punctuation">;
class="token keyword">private String nameclass="token punctuation">;
class="token keyword">public class="token function">A class="token punctuation">( class="token keyword">int ageclass="token punctuation">, String nameclass="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">. ageclass="token operator">= ageclass="token punctuation">;
class="token keyword">this class="token punctuation">. nameclass="token operator">= nameclass="token punctuation">;
class="token punctuation">}
class="token keyword">public class="token function">A class="token punctuation">( class="token keyword">int ageclass="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">( ageclass="token punctuation">, class="token string">"周杰伦" class="token punctuation">) class="token punctuation">; class="token comment">//调用 A(int age,String name)构造方法
class="token punctuation">}
class="token keyword">public class="token function">A class="token punctuation">( class="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">( class="token number">1 class="token punctuation">) class="token punctuation">; class="token comment">//调用 A(int age)构造方法
class="token punctuation">}
class="token keyword">public class="token keyword">void class="token function">setName class="token punctuation">( String nameclass="token punctuation">) class="token punctuation">{ class="token keyword">this class="token punctuation">. nameclass="token operator">= nameclass="token punctuation">; class="token punctuation">}
class="token keyword">public String class="token function">getName class="token punctuation">( class="token punctuation">) class="token punctuation">{ class="token keyword">return nameclass="token punctuation">; class="token punctuation">}
class="token keyword">public class="token keyword">void class="token function">setAge class="token punctuation">( class="token keyword">int ageclass="token punctuation">) class="token punctuation">{ class="token keyword">this class="token punctuation">. ageclass="token operator">= ageclass="token punctuation">; class="token punctuation">}
class="token keyword">public class="token keyword">int class="token function">getAge class="token punctuation">( class="token punctuation">) class="token punctuation">{ class="token keyword">return ageclass="token punctuation">; class="token punctuation">}
class="token punctuation">}
class="prism language-class ="tags" href="/tags/JAVA.html" title=java>java">A aclass="token operator">= class="token keyword">new class="token class -name">A class="token punctuation">( class="token number">20 class="token punctuation">, class="token string">"邓紫棋" class="token punctuation">) class="token punctuation">;
A bclass="token operator">= class="token keyword">new class="token class -name">A class="token punctuation">( class="token number">20 class="token punctuation">) class="token punctuation">;
A cclass="token operator">= class="token keyword">new class="token class -name">A class="token punctuation">( class="token punctuation">) class="token punctuation">;
String name class="token operator">= aclass="token punctuation">. class="token function">getName class="token punctuation">( class="token punctuation">) class="token punctuation">;
String name1 class="token operator">= bclass="token punctuation">. class="token function">getName class="token punctuation">( class="token punctuation">) class="token punctuation">;
class="token keyword">int age class="token operator">= cclass="token punctuation">. class="token function">getAge class="token punctuation">( class="token punctuation">) class="token punctuation">;
Systemclass="token punctuation">. outclass="token punctuation">. class="token function">println class="token punctuation">( nameclass="token punctuation">) class="token punctuation">;
Systemclass="token punctuation">. outclass="token punctuation">. class="token function">println class="token punctuation">( name1class="token punctuation">) class="token punctuation">;
Systemclass="token punctuation">. outclass="token punctuation">. class="token function">println class="token punctuation">( ageclass="token punctuation">) class="token punctuation">;
定义一个标准的class ="tags" href="/tags/Lei.html" title=类>类
一个标准的class ="tags" href="/tags/Lei.html" title=类>类通常要拥有以下四个组成部分; 1.所有的成员变量都要用 private 关键词,来修饰成员变量。 2.为每一个成员变量编写一对 getter/setter 方法。 3.编写一个无参数的构造方法。 4.编写一个全参数的构造方法。 这样的一个标准的class ="tags" href="/tags/Lei.html" title=类>类也叫做 class ="tags" href="/tags/JAVA.html" title=java>java bean(豆)。
源代码: Studentclass ="tags" href="/tags/Lei.html" title=类>类:
class="prism language-class ="tags" href="/tags/JAVA.html" title=java>java">ackage itcastclass="token punctuation">. cnclass="token punctuation">;
class="token keyword">public class="token keyword">class class="token class -name">Student class="token punctuation">{
class="token keyword">private String nameclass="token punctuation">; class="token comment">//姓名
class="token keyword">private class="token keyword">int ageclass="token punctuation">; class="token comment">//年龄
class="token keyword">public class="token function">Student class="token punctuation">( String nameclass="token punctuation">, class="token keyword">int ageclass="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">. name class="token operator">= nameclass="token punctuation">;
class="token keyword">this class="token punctuation">. age class="token operator">= ageclass="token punctuation">;
class="token punctuation">}
class="token keyword">public class="token function">Student class="token punctuation">( class="token punctuation">) class="token punctuation">{
class="token punctuation">}
class="token keyword">public String class="token function">getName class="token punctuation">( class="token punctuation">) class="token punctuation">{
class="token keyword">return nameclass="token punctuation">;
class="token punctuation">}
class="token keyword">public class="token keyword">void class="token function">setName class="token punctuation">( String nameclass="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">. name class="token operator">= nameclass="token punctuation">;
class="token punctuation">}
class="token keyword">public class="token keyword">int class="token function">getAge class="token punctuation">( class="token punctuation">) class="token punctuation">{
class="token keyword">return ageclass="token punctuation">;
class="token punctuation">}
class="token keyword">public class="token keyword">void class="token function">setAge class="token punctuation">( class="token keyword">int ageclass="token punctuation">) class="token punctuation">{
class="token keyword">this class="token punctuation">. age class="token operator">= ageclass="token punctuation">;
class="token punctuation">}
class="token punctuation">}
mainclass ="tags" href="/tags/Lei.html" title=类>类;
class="prism language-class ="tags" href="/tags/JAVA.html" title=java>java">class="token keyword">package itcastclass="token punctuation">. cnclass="token punctuation">;
class="token keyword">public class="token keyword">class class="token class -name">Main class="token punctuation">{
class="token keyword">public class="token keyword">static class="token keyword">void class="token function">main class="token punctuation">( Stringclass="token punctuation">[ class="token punctuation">] argsclass="token punctuation">) class="token punctuation">{
Student stu1 class="token operator">= class="token keyword">new class="token class -name">Student class="token punctuation">( class="token punctuation">) class="token punctuation">;
stu1class="token punctuation">. class="token function">setName class="token punctuation">( class="token string">"Tom" class="token punctuation">) class="token punctuation">;
stu1class="token punctuation">. class="token function">setAge class="token punctuation">( class="token number">19 class="token punctuation">) class="token punctuation">;
Systemclass="token punctuation">. outclass="token punctuation">. class="token function">println class="token punctuation">( class="token string">"姓名:" class="token operator">+ stu1class="token punctuation">. class="token function">getName class="token punctuation">( class="token punctuation">) class="token operator">+ class="token string">",年龄:" class="token operator">+ stu1class="token punctuation">. class="token function">getAge class="token punctuation">( class="token punctuation">) class="token punctuation">) class="token punctuation">;
Systemclass="token punctuation">. outclass="token punctuation">. class="token function">println class="token punctuation">( class="token string">"=============" class="token punctuation">) class="token punctuation">;
Student stu2 class="token operator">= class="token keyword">new class="token class -name">Student class="token punctuation">( class="token string">"Ben" class="token punctuation">, class="token number">20 class="token punctuation">) class="token punctuation">;
Systemclass="token punctuation">. outclass="token punctuation">. class="token function">println class="token punctuation">( class="token string">"姓名:" class="token operator">+ stu2class="token punctuation">. class="token function">getName class="token punctuation">( class="token punctuation">) class="token operator">+ class="token string">",年龄:" class="token operator">+ stu2class="token punctuation">. class="token function">getAge class="token punctuation">( class="token punctuation">) class="token punctuation">) class="token punctuation">;
class="token punctuation">}
class="token punctuation">}
运行结果;