Java中类的方法分为类方法(用static修饰,也叫静态方法)和实例方法(没有用static修饰,也叫非静态方法)
实例方法,就是一般的方法
类方法,有static修饰符,典型的主函数
构造方法,没有返回值(就是连void都没有),方法名与类名一样
public static void myMethod();//类方法
public void myMethod2();//实例方法
public Test(){}//构造方法,没有返回值,方法名与类名一样
实例方法与类方法的区别:
1、类方法是属于整个类,而不属于某个对象。
2、类方法只能访问类成员变量,不能访问实例变量,而实例方法可以访问类成员变量和实例变量。
3、在类方法中不能使用super、this关键字。
4、类方法的调用可以通过类名.类方法和对象.类方法,而实例方法只能通过对象.实例方法访问。
5、类方法只能访问类方法,而实例方法可以访问类方法和实例方法。
6、类方法不能被覆盖,实例方法可以被覆盖。
- 构造方法—构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须满足以下的语法规则:
1、方法名与类名相同;
2、不要返回类型(例如return、void等);
3、不能被static、final、native、abstract和synchronized修饰,不能被子类继承
1.1. 默认构造方法—默认构造方法时没有参数的构造方法,分为
a.隐含的默认构造方法:public ClassName(){}
b.程序显示定义默认构造方法:public Employee(){this("无名氏");}
1.2. 重载构造方法—通过new创建一个对象后,在不同的条件下,对象可能会有不同的初始化行为,可以通过重载构造方法来表达对象的初始化行为。具体参考this关键字的用法。
1.3. 子类调用父类的构造方法—父类的构造方法不能被子类调用,可以通过super语句调用父类的构造方法。例如:
用super调用父类的构造方法必须遵守以下规则:
1. 子类的构造方法中不能直接通过父类的方法名调用父类的构造方法,使用super语句;
2. 加入在子类的构造方法中有super语句,它必须作为构造方法的第一条语句(同this语句);
1.4. 构造方法的作用域
1、当前类的其他构造方法通过this语句调用;
2、当前类的子类的构造方法通过super语句调用;
3、在程序中通过new语句调用。
1.5. 构造方法的private访问级别— 构造方法为private级别时,意味着只能在当前类中访问它:当前类的其他构造方法中可以通过this语句调用,此外还可以在当前类的成员方法中使用new调用。
以下场合中,可以把类的所有构造方法声明为private:
1、这个类中仅仅包含一些供其他程序调用的静态方法,没有任何实例方法。
2、禁止这个类被继承。声明为private后,如果定义了它的子类,子类的方法中无法调用父类的任何构造方法。
3、类需要把构造自身实例的细节封装起来,不允许其他程序通过new语句创建这个类的实例。提供静态方法。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/37613.html