Java中类的主方法+构造方法,我觉得我可以这样理解
前言
更新了!!!
在我之前学习这一部分的时候,大概就是这个样子理解的。在刚刚接触学习面向对象思想的时候其实我整个人就是很蒙的,可能在我更新的过程中学习的思路的先后顺序会有一些混乱(放心,没什么影响,我也是这么过来的),所以还是由衷的和点开这篇文章文章的你谁一句抱歉。
(本文中若有任何错误观点,还请路过的大佬能够不吝赐教,感激不尽!!!)
一、类的主方法
主方法是类的入口点,它定义了程序从何处开始;主方法提供对程序流向的控制,Java编译器通过主方法来执行程序。
语法:
public static void main(String[] args){
//方法体
}
主方法的定义中包含的特性:
- ·主方法是静态的,如果要直接在主方法中调用其他方法,则该方法也必须是静态的
- ·主方法没有返回值
- ·主方法的形参我数组,其中args[0]~args[n]分别代表程序的第一参数到第n个参数,可以使用args.length获取整个采纳数的个数。
代码示例:
public class TestMain { //定义类
public static void main(String[] args) { //主方法
for (int i = 0; i < args.length; i++) { //根据参数个数做循环操作
System.out.println(args[i]); //循环打印参数内容
}
}
}
在Eclipse中运行这一段代码。
在Eclipse中设置程序参数的步骤如下:
- 在Eclipse中,在包资源管理器的项目名称节点上右击,在弹出的快捷键菜单中选择“Run As/Run
Configrations”命令,弹出“Run Configrations”对话框。 - 在“Run Configrations”对话框中选择“Arguments”选项卡,在“Program
argument”文本框中输入相应的参数,每个采纳数键按“Enter”键隔开。如下图所示:
运行结果:
二、构造方法
类中除了成员方法之外还存在一种特殊类型的方法,这种方法叫做构造方法。该方法是一个与类同名的方法,独享的创建就是通过构造方法完成的。每当实例化一个对象时,类都会自动调用构造方法。
构造方法的特点:
- ·构造方法没有返回值
- ·构造方法的名称要与本类的名称相同
语法:
public Student(){
....//构造方法体
}
- ·public:构造方法修饰符
- ·Student:构造方法的名称
构造方法中可以为成员变量赋值,这样当实例化一个本类的对象时,相应的成员变量也将被初始化。如果类中没有明确定义的构造方法,编译器会自动创建一个不带参数的默认构造方法。
注意:
- ·在定义构造方法时,构造方法没有返回值,但是这与普通没有返回值的方法不同,普通没有返回值的方法使用public void
Student()这种形式定义,但是构造方法并不需要使用void关键字进行修饰。 - ·如果在类中定义的构造方法都不是无参构造方法,那么编译器也不会为类设置一个默认的无参构造方法,当试图调用无参构造方法实例化的一个对象时,编译器会报错。所以只有在类中没有定义任何构造方法时,编译器才会在该类中自动创建一个不带参数的构造方法。
代码示例:
public class AnyThting {
public AnyThting(){
this("this调用有参构造方法"); //定义无参构造方法
System.out.println("无参构造方法"); //使用this调用有参构造方法
}
public AnyThting(String name){ //定义有参构造方法
System.out.println("有参构造方法");
}
}
上述代码中可以看到定义了两个构造方法,在无参构造方法中可以使用“this”关键字调用有参的构造方法。但还是使用这种方式需要注意的是可以在无参构造方法中的第一句使用“this”调用有参构造方法。
希望有所帮助!!!
关注我,持续更新!!!