Java中类的方法分为类方法(用static修饰,也叫静态方法)和实例方法(没有用static修饰,也叫非静态方法)
实例方法,就是一般的方法
类方法,有static修饰符,典型的主函数
构造方法,没有返回值(就是连void都没有),方法名与类名一样

public static void myMethod();//类方法
public void myMethod2();//实例方法
public Test(){}//构造方法,没有返回值,方法名与类名一样

实例方法与类方法的区别:

1、类方法是属于整个类,而不属于某个对象。
2、类方法只能访问类成员变量,不能访问实例变量,而实例方法可以访问类成员变量和实例变量。
3、在类方法中不能使用super、this关键字。
4、类方法的调用可以通过类名.类方法和对象.类方法,而实例方法只能通过对象.实例方法访问。
5、类方法只能访问类方法,而实例方法可以访问类方法和实例方法。
6、类方法不能被覆盖,实例方法可以被覆盖。
  1. 构造方法—构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。必须满足以下的语法规则:
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语句创建这个类的实例。提供静态方法。

实例方法、类方法、构造方法相关推荐

  1. 软件测试学习 之 Python 类属性 实例属性、实例方法 类方法 静态方法

    本篇的主要内容是自己的手动操作的学习记录,关于个名词的理论概念参见以下文章: Python 实例方法.类方法.静态方法的区别与作用 作者:蔷薇Nina 出处:博客园 python3类对象.实例对象.类 ...

  2. 实例变量和类变量、实例方法类方法区别

    实例变量 实例变量声明在一个类中,但在方法.构造方法和语句块之外: 当一个对象被实例化之后,每个实例变量的值就跟着确定: 实例变量在对象创建的时候创建,在对象被销毁的时候销毁: 实例变量的值应该至少被 ...

  3. 类方法的实例python_Python Class 的实例方法/类方法/静态方法

    实例方法.类方法.静态方法 class MyClass(object): class_name = "MyClass" # 类属性, 三种方法都能调用 def __init__(s ...

  4. Python 实例方法,类方法和静态方法的区别

    在 Python 中,实例方法(instance method),类方法(class method)与静态方法(static method)经常容易混淆.本文通过代码例子来说明它们的区别. 1.实例方 ...

  5. Python的实例方法,类方法,静态方法之间的区别及调用关系

    如果只看这个图,很多人可能会看的一头雾水,特别是学过完全面向对象语言的同学, Python 是双面向的,既可以面向函数编程,也可以面向对象编程,所谓面向函数就是单独一个. py 文件,里面没有类,全是 ...

  6. 实例方法 类方法 静态方法

    1 实例方法 2 类方法 3 静态方法 4.@property 5.区别 1.实例方法 定义:第一个参数必须是实例对象,该参数名一般约定为"self",通过它来传递实例的属性和方法 ...

  7. python 实例方法 类方法_Python实例方法 静态方法 类方法

    @staticmethod和@classmethod的区别 class 类 @staticmethod @classmethod 首先创建一个类,如果想要调用Student类中的方法get_score ...

  8. Python基础学习——面向对象编程(第一讲:面向对象概述、面向对象三个基本特征(封装性、继承性、多态性)、类和对象(定义类、创建和使用对象、实例变量、类变量、构造方法、实例方法、类方法、静态方法))

    面向对象是Python最重要的特性,在Python中一切数据类型都是面向对象的. 1.面向对象概述 面向对象的编程思想是,按照真实世界客观事物的自然规律进行分析,客观世界中存在什么样的实体,构建软件系 ...

  9. python中实例方法分类_python方法的分类(实例方法、类方法、静态方法)

    方法和函数的区分 很多童鞋会比较疑惑,方法和函数有什么区别,都是通过def去定义的啊? 只需要记住一点,方法是用来描述一个目标的行为动作! 不论你是直接通过 类名.方法调用,还是通过由类生成的实例.方 ...

  10. 理解method(实例方法), staticmethod(静态方法)和classmethod(类方法)的区别

    1.概述 Python中定义在类中的函数称作方法,  可以通过装饰器@staticmethod  和@classmethod将其转换成静态方法, 和类方法. 本文将通过实例帮大家理解其中的区别, 以便 ...

最新文章

  1. java changelistener_ListChangeListener.Change
  2. Nginx入门笔记之————配置文件结构
  3. 支撑性服务 自动化能力
  4. Leetcode--416. 分割等和子集
  5. 慎用dictionaryWithObjectsAndKeys方法
  6. 同时更改一条数据_数据仓库amp;面试总结
  7. Web Activities 简介
  8. VMware Workstation 9.0安装体验
  9. python中三元_Python三元运算和Python函数介绍
  10. JVM学习-深入理解Java虚拟机代码实践问题
  11. 从winpe安装系统
  12. matlab 自激振荡,自激振荡系统matlab仿真课程设计
  13. 威联通NAS实现定时任务
  14. 2020年雅思机考考点将覆盖全国14城
  15. Re 从零开始的C++之路(四)容器和迭代器
  16. 计算机辅助设计与制造考试题,计算机辅助设计与制造试题.docx
  17. Fomo3D 玩法中文版指南,Dapp 游戏热度超越加密猫CryptoKitties排名第一
  18. 关于C语言中feof的使用
  19. 计算机作业我家乡的变化,家乡的变化
  20. ICPC-思维-CF#525div2 A+B+C+D

热门文章

  1. 苏宁易购山寨版 JavaWeb项目,源码我奉献了吧!
  2. 第十一周作业-必做4
  3. 微信打开网页提示有重定向,需点继续访问才能访问的解决方案
  4. 项目经理,你要考的证书都在这
  5. 如何获取元素的相对于屏幕的距离?
  6. 如何创建网站:2021年看这份指南就够了
  7. python 回调函数
  8. 期货开户手续费和保证金计算方法
  9. 百度首席运营官叶朋离职,王湛、沈皓瑜升职
  10. 基于arcgis的python编程秘籍_基于ArcGIS的Python编程秘笈 第2版