Java小白入门200例69之构造方法详解
Posted 编程界明世隐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例69之构造方法详解相关的知识,希望对你有一定的参考价值。
作者简介
作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!
引言
很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!
导航
✪ Java小白入门200例系列目录索引
◄上一篇 68.创建一个学生类
►下一篇 70.this关键字详解
构造方法和方法的区别:
构造方法要与类名相同,无返回类型,在类初始化的时候调用。
方法最好与类名不同,对象调用,静态方法可用类名.方法().
构造器和方法在下面三个方面区别:修饰符,返回值,命名。
- 和方法一样,构造器可以有任何访问的修饰: public, protected, private或者没有修饰(通常被package 和 friendly调用). 不同于方法的是,构造器不能有以下非访问性质的修饰: abstract, final, native, static, 或者 synchronized。
- 返回类型也是非常重要的。方法能返回任何类型的值或者无返回值(void),构造器没有返回值,也不需要void。
- 两者的命名。构造器使用和类相同的名字,而方法则不同。按照习惯,方法通常用小写字母开始,而构造器通常用大写字母开始。构造器通常是一个名词,因为它和类名相同;而方法通常更接近动词,因为它说明一个操作。
案例1
创建一个默认的构造方法
package demo.demo69;
import demo.demo69.Student;
/*
* 学生类
*/
public class Student {
private String name;// 名字
private int age;// 年龄
private char sex;// 性别
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public char getSex() {
return sex;
}
public void setSex(char sex) {
this.sex = sex;
}
}
有小伙伴肯定会问了,你构造函数不是说要与类名一样吗,我代码没有看到你所说的构造方法呢。
其实创建类以后,默认有一个无参构造器,我们写个main方法调用一下,就知道了。
//main方法
public static void main(String[] args) {
Student student1 = new Student();
student1.setName("张三");
student1.setAge(20);
student1.setSex('男');
System.out.println("姓名:" + student1.getName() + "\\n性别:" + student1.getSex() + "\\n年龄:" + student1.getAge());
}
可以看到在实例化Student的时候,直接用new Student() 来创建了,这个就是默认的构造器,只要建了类就会默认自带的,当然我们可以自己定义。
案例2
修改默认的构造器,自己编写。
在Student类中加入以下代码
public Student() {
System.out.println("调用自己定义的无参构造器");
}
运行一下这个类:
调用自己定义的无参构造器
姓名:张三
性别:男
年龄:20
当然可以有多个构造器的存在,需要哪个就调用哪个,但是因为名字都是和类名一样的,所以构造器是通过参数来区分的。
案例3
加入有参数的构造器
public Student(String name,int age,char sex) {
System.out.println("调用自己定义的有参构造器");
this.name=name;
this.age=age;
this.sex=sex;
}
修改一下main方法
//main方法
public static void main(String[] args) {
/*Student student1 = new Student();
student1.setName("张三");
student1.setAge(20);
student1.setSex('男');*/
Student student1 = new Student("王小妹",18,'女');
System.out.println("姓名:" + student1.getName() + "\\n性别:" + student1.getSex() + "\\n年龄:" + student1.getAge());
}
运行结果:
调用自己定义的有参构造器
姓名:王小妹
性别:女
年龄:18
案例4
多个构造可以共存,并且分别调用的,看自己的需要
package demo.demo69;
import demo.demo69.Student;
/*
* 学生类
*/
public class Student {
public Student() {
System.out.println("调用自己定义的无参构造器");
}
public Student(String name,int age,char sex) {
System.out.println("调用自己定义的有参构造器");
this.name=name;
this.age=age;
this.sex=sex;
}
private String name;// 名字
private int age;// 年龄
private char sex;// 性别
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public char getSex() {
return sex;
}
public void setSex(char sex) {
this.sex = sex;
}
//main方法
public static void main(String[] args) {
Student student1 = new Student();
student1.setName("张三");
student1.setAge(20);
student1.setSex('男');
System.out.println("姓名:" + student1.getName() + "\\n性别:" + student1.getSex() + "\\n年龄:" + student1.getAge());
Student student2 = new Student("王小妹",18,'女');
System.out.println("姓名:" + student2.getName() + "\\n性别:" + student2.getSex() + "\\n年龄:" + student2.getAge());
}
}
运行结果:
调用自己定义的无参构造器
姓名:张三
性别:男
年龄:20
调用自己定义的有参构造器
姓名:王小妹
性别:女
年龄:18
小结
这节总结了“构造方法详解”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。
评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!
导航
✪ Java小白入门200例系列目录索引
◄上一篇 68.创建一个学生类
►下一篇 70.this关键字详解
热门专栏推荐
1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java
以上是关于Java小白入门200例69之构造方法详解的主要内容,如果未能解决你的问题,请参考以下文章