当前位置: 首页 > news >正文

static 和构造方法

文章目录

    • static
    • 构造方法
    • 内存中数据的存储方式
    • 示例

static

具体对象的属性,称之为对象属性,成员属性,实例属性。

具体对象的方法,称之为对象方法,成员方法,实例方法。

静态:static

  • 和具体对象无关,只和类相关的属性,称之为静态属性。
  • 和具体对象无关,只和类相关的方法,称之为静态方法。

静态属性和静态方法,不用实例化对象,可直接通过类来使用

先有类,再有对象。对象也可直接访问类的静态属性和静态方法。

  • 成员方法可访问类的静态属性和静态方法,也可访问成员属性和其他的成员方法。
  • 静态方法只能访问类的静态属性和其他静态方法,不能访问成员属性和成员方法。

构造方法

  • 构造方法没有 void 关键字
  • 构造方法的名称和类名完全相同
  • 如果类中没有显式定义构造方法,JVM 会隐式创建一个无参的构造方法。

执行顺序: 静态代码块 -> 成员代码块 -> 构造方法

内存中数据的存储方式

  • 元空间:存储的是类的结构信息、静态属性、静态方法、静态代码块。
  • 栈空间:存储的是变量。
  • 堆空间:存储的是具体对象的信息。

示例

class People {String name;String nationality = "china";
}class Bird {// 成员属性String name;// 构造方法// 常用于成员属性的初始化操作Bird(String a) {name = a;System.out.println("构造方法 " + name);}// 成员方法void test() {System.out.println("成员方法 " + name);}// 静态属性static String type = "bird";// 静态方法static void fly() {System.out.println("bird can fly");}// 静态代码块:当类的信息加载完成时,会自动优先调用静态代码块。// 静态代码块可有多个,依次按顺序执行// 静态代码块常用于静态属性的初始化操作static {System.out.println("静态代码块");}// 成员代码块:当创建对象(实例化类)时,成员代码块会自动执行。// 成员代码块在静态代码块之后,构造方法之前执行。{System.out.println("成员代码块");}
}
People a = new People();
a.name = "jack";
System.out.println("name:" + a.name + " nationality:" + a.nationality);// System.out.println(Bird.type);
// Bird.fly();
Bird b = new Bird("b1"); 
http://www.lryc.cn/news/63278.html

相关文章:

  • 【Linux 裸机篇(八)】I.MX6U EPIT 定时器中断、定时器按键消抖
  • Web安全 XSS靶场搭建(玩转整个XSS环境.)
  • 前端开发技术——DOM(上)
  • 银河麒麟v10服务器版安装OpenDDS
  • curl方式调用电商API接口示例 详细介绍
  • Duboo介绍与入门
  • 人工智能中(Pytorch)框架下模型训练效果的提升方法
  • 树莓派CSI摄像头使用python调用opencv库函数进行运动检测识别
  • Parameters(in)、Parameters(out) and Parameters(inout)
  • jstat命令查看jvm内存情况及GC内存变化
  • java 图形化小工具Abstract Window Toolit :画笔Graphics,画布Canvas(),弹球小游戏
  • HCIA-RS实验-STP和RSTP(1)
  • Leetcodes刷题之删除链表的倒数N个结点和删除链表的中间的结点
  • Java-数据结构-并查集<二>
  • JSP网上教学资源共享系统(源代码+论文)
  • QT C++入门学习(1) QT Creator安装和使用
  • UE动画状态机的事件触发顺序测试
  • 数学建模的搜索技巧
  • 学成在线笔记+踩坑(10)——课程搜索、课程发布时同步索引库。
  • 某应用虚拟化系统远程代码执行
  • solaris-Oracle11g于linux-mysql相连
  • 大厂齐出海:字节忙种草,网易爱社交
  • 几个实用的正则表达式
  • python实战应用讲解-【numpy数组篇】常用函数(八)(附python示例代码)
  • Speech and Language Processing-之N-gram语言模型
  • 【AI】Python 安装时启用长路径支持
  • 深入理解Go语言中的接口编程【17】
  • “数字中国·福启海丝”多屏互动光影艺术秀27日在福州举办
  • Docker安装mysql8.0文档
  • 在函数中使用变量