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

中小企业的网站建设方案同一ip 网站 权重

中小企业的网站建设方案,同一ip 网站 权重,辽宁省建设工程招标网,付费腾讯企业邮箱入口书接上回 类与对象 static关键字 static的作用: 修饰一个属性:声明为static的变量实质上就是一个全局变量,其生命周期为从类被加载开始一直到程序结束;修饰方法:无须本类的对象也可以调用该方法;修饰一个类&#x…

书接上回

类与对象

static关键字

static的作用:

  1. 修饰一个属性:声明为static的变量实质上就是一个全局变量,其生命周期为从类被加载开始一直到程序结束;
  2. 修饰方法:无须本类的对象也可以调用该方法;
  3. 修饰一个类:该类必须是内部类(后说);
    静态类与变量通过类名直接调用:类名.静态变量/静态方法。注意,非静态方法中可以调用静态的变量和方法,而静态方法中只能调用静态的变量和方法,不能调用非静态的变量和方法。
public class Test{public static void main(String[] args) {House h;//声明一个类的变量h = new House();//创建实例对象h.kind = "别墅";h.Print();//非静态方法的调用需要有h这个对象House.Smile();//静态类直接调用System.out.println(House.Count);//变量的调用也一样}
}
public class House{String kind = "未知";static int Count = 3;public void Ptint(){System.out.println(kind + Count +"栋");}public static void Smile(){System.out.println("哈哈,被骗了");}
}

静态方法限制:

  1. 仅能调用其他static方法;
  2. 只能访问static数据;
  3. 不能以任何方式引用this和super;
    因为static的限制,所以我们再定义他的时候最好确定之后他是否是所有对象共同的属性或方法在将其定义为静态。

值传递与引用传递

有一道非常经典的面试题目:


public class Test {public static void main(String[] args) {Integer a = 1;Integer b = 2;System.out.println("a 和 b 的原始的值:"+a+" "+b);swap(a,b);System.out.println("a 和 b 的现在的值:"+a+" "+b);}private static void swap(Integer a, Integer b) {// 交换a与b的值}

实现变量的交换非常简单,前面已经学习过了三种交换方法,直接带入最简单的:

 	private static void swap(Integer a, Integer b) {// 交换a与b的值int c;c = a;a = b;b = c;}

完成后最后的结果却是错的,这是因为程序中只交换了形参的值,而实参却没有丝毫变化。
形参 :就是形式参数,用于定义方法的时候使用的参数,是用来接收调用者传递的参数的。 形参只有在方法被调用的时候,虚拟机才会分配内存单元,在方法调用结束之后便会释放所分配的内存单元。 因此,形参只在方法内部有效,所以针对引用对象的改动也无法影响到方法外。
实参 :就是实际参数,用于调用时传递给方法的参数。实参在传递给别的方法之前是要被预先赋值的。 在本例中 swap 方法中的a, b 就是形参,传递给 swap 方法的 a,b 就是实参。
值传递:只能把实参传递给形参,而不能把形参的值反向作用到实参上。在函数调用过程中,形参的值发生改变,而实参的值不会发生改变。
在上题中,实际内存情况:
在这里插入图片描述
引用传递:是将实参引用的地址传递给了形参,所以任何发生在形参上的改变也会发生在实参变量上。
在第一个程序中h.kind = "别墅";这就是引用传递:
在这里插入图片描述

内存结构

在这里插入图片描述
.class:java程序编译后产生的编译文件;
类加载器:加载.class文件 ;
方法区:各个线程共享的内存区域,它用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据;
栈内存: 在栈内存中保存的是堆内存空间的访问地址,或者说栈中的变量指向堆内存中的变量(Java中的指针);
堆内存:堆内存用来存放由new创建的对象实例和数组;
本地方法栈:存储本地方法,比如c语言栈。
程序计数器:可以看做是当前线程所执行的字节码的行号指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都要依赖这个计数器来完成。

代码块

用大括号裹起来的代码:

  1. 普通代码块:在方法中的写的代码块;
  2. 构造块:在类中定义的代码块,在创造对象时被调用,优于构造方法;
  3. 静态代码块:在类中是使用static声明的代码块,在第一次被调用(创建对象)时被调用,只会执行一次,优于构造块;
  4. 同步代码块:多线行程中介绍;
public class Test{public static void main(String[] args) {House h1 = new House();House h2 = new House();House h = null;}
}
public class House{public House(){System.out.println("构造方法/n--------------");}{System.out.println("构造块House/n---------");}public static void Smile(){{String info = "普通代码块smile/n-----------";System.out.println(info);			}}static {String info = "静态代码块smile/n-----------";}
}
http://www.yayakq.cn/news/686168/

相关文章:

  • 口红机网站怎么做的杭州 兼职 网站建设
  • 网页编辑器手机版seo推广服务哪家好
  • 户型图在哪个网站找ui设计技能就业培训
  • 怎么用云虚拟主机建设网站百度收录最快的网站
  • 做土司的网站制作网页改颜色
  • 深圳产品型网站建设网站建设三要素
  • 临沂网站建设有哪些个人网站自助建站
  • 银川网站建设哪家便宜建站工作室源码
  • 西安网站建设 中讯创赢衡阳公司注册
  • 网站索引量网站建设课程大纲
  • 网站开发客户需求文档阿里巴巴外发加工网珠海
  • 建网站代理哪个苍南公司网站建设
  • 青岛高端模板建站做网站如何变现
  • 个人网站管理系统有哪些国外网站做的好的效果图
  • 重庆网站页面优化网站用途
  • 上海网站建设 建站猫wordpress博客背景
  • 桐乡市建设局网站大通酩悦帝国 cms 网站关键字
  • 免费网站建设软件邢台太行中学招生电话
  • 网站建设及维护机做网站设计赚钱吗
  • 揭西网站建设视频解析网站
  • 网站建设一个多少钱seo关键词排名价格
  • 如何做的网站手机可以用吗福州企业高端网站建设制作哪家好
  • 做旅游网站挣钱吗wordpress漏洞视频
  • 网站设计师简介河南省建筑一体化平台
  • 电商网站开发制作服装网站设计方案
  • 外贸常用社交网站有哪些自己做整个网站的流程
  • 网站做电商资质吗wordpress3.8.1中文版
  • 苏州建设教育协会网站国内免费代理ip地址和端口
  • 如何做淘宝客自己的网站国外免费虚拟主机
  • 什么网站可以接装修活惠州手机网站商城建设