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

便宜电商网站建设网络营销专业是学什么的

便宜电商网站建设,网络营销专业是学什么的,软件定制图片,劳务输送网站建设方案四、作用域 在 Java 中,变量根据其作用域和生命周期可以分为 局部变量 和 全局变量(通常指成员变量)。 1. 局部变量(Local Variables) 定义: 声明位置:在方法、构造方法、代码块&#xff08…

四、作用域

在 Java 中,变量根据其作用域和生命周期可以分为 局部变量全局变量(通常指成员变量)。

1. 局部变量(Local Variables)

定义

  • 声明位置:在方法、构造方法、代码块(如 {})内部声明。
  • 作用域:仅限于声明它的方法或代码块内部。
  • 生命周期:从声明处开始,到方法/代码块执行结束时销毁。
  • 初始化必须显式初始化,否则编译报错。
public class Example {public void demoMethod() {int localVar = 10; // 局部变量System.out.println(localVar);}public static void main(String[] args) {Example obj =0 new Example();obj.demoMethod();// System.out.println(localVar); // 错误!localVar 在此不可见}
}
  • 线程安全:每个线程调用方法时会创建独立的局部变量副本。
  • 无默认值:必须手动赋值(如 int x = 0;)。
  • 属性和局部变量可以重名,访问时遵循就近原则
  • 在同一个作用域中,例如同一个成员方法中,两个局部变量不能重名

2. 全局变量(成员变量,Member Variables)

定义

  • 声明位置:在类内部、方法外部声明。
  • 作用域:整个类内部(所有方法均可访问)。
  • 生命周期:与对象共存亡(实例变量)或与类共存亡(静态变量)。
  • 初始化自动赋予默认值(如 int 默认为 0,对象默认为 null)。

分类

  1. 实例变量(Instance Variables)
    • 属于对象,每个对象有独立副本。
    • 通过 对象.变量名 访问。
  2. 静态变量(Static Variables)
    • 属于类,所有对象共享同一副本。
    • 通过 类名.变量名 访问。
public class Example {// 实例变量(全局变量)int instanceVar = 20;// 静态变量(全局变量)static String staticVar = "Hello";public void printVars() {System.out.println(instanceVar); // 访问实例变量System.out.println(staticVar);  // 访问静态变量}public static void main(String[] args) {Example obj1 = new Example();obj1.instanceVar = 30; // 修改 obj1 的实例变量Example.staticVar = "World"; // 修改静态变量(影响所有对象)Example obj2 = new Example();System.out.println(obj2.instanceVar); // 输出 20(默认值)System.out.println(obj2.staticVar);  // 输出 "World"(静态变量共享)}
}
  • 默认值:无需显式初始化(如 int 默认为 0)。
  • 线程风险:实例变量和静态变量可能被多线程共享,需同步控制。

3. 关键对比

特性局部变量全局变量(成员变量)
声明位置方法/代码块内部类内部,方法外部
作用域仅限于声明块内整个类
生命周期方法/代码块执行期间对象存活期(实例变量)或程序运行期(静态变量)
初始化必须显式初始化自动赋予默认值
线程安全是(每个线程独立副本)实例变量:否;静态变量:需同步
访问方式直接使用变量名实例变量:对象.变量名;静态变量:类名.变量名
存储位置栈内存堆内存(实例变量)/方法区(静态变量)

五、构造方法/构造函数/构造器

类的一种特殊方法,主要用于完成对新对象的初始化(属性的值)。构造器被调用时对象已经存在,仅完成属性初始化。

[修饰符] 方法名(形参列表) {方法体;
}类名 对象名 = new 类名(实参列表);
  • 一个类可以定义多个不同的构造器,即构造器的重载(例如分别初始化不同的属性)
  • 修饰符可以是任意一个
  • 构造器没有返回值
  • 方法名和类名必须一样
  • 在创建新对象时,系统自动调用构造器对对象进行初始化,不能主动调用
  • 如果没有定义构造方法,系统会自动给类生成一个默认无参构造方法,例如Person(){}。可以通过javap命令反编译.class文件提供的字节码获得源码(输出的构造函数是一个声明)。
  • 一旦定义构造器,默认的构造器就被覆盖,不能再使用默认的无参构造器;除非显示定义无参构造器

⭐对象创建流程:

六、this关键字

输出结果为null 0,因为在构造器中相当于局部变量自己给自己赋值,对对象属性的值没有影响。

  • JVM会给每个对象分配this,代表当前对象

  • 可以认为对象中有个隐藏的属性this,是一个引用,指向该对象所在的地址

  • 简单地将hashCode()方法认为获取对象的地址,会根据不同的对象返回不同的整数,是将该对象的内部地址转换成一个整数实现的。因为Java代码在JVM上运行,不能直接获取地址

  • this可以访问本类的属性、方法、构造器

  • 可以用于区分当前类的属性和局部变量

  • 访问成员方法:this.方法名(参数列表);

  • 访问构造器:this(参数列表);只能在构造器中使用该语句访问另一个构造器,并且该语句必须放在第一条,不能使用多条

  • 不能再类定义的外部使用,只能在类定义的方法中使用

🐈‍⬛生成随机整数

例如在 Java 中,生成 0~6 之间的随机整数(包括 0 和 6),可以使用 java.util.RandomMath.random()。以下是两种方法的实现:

方法 1:使用 java.util.Random

import java.util.Random;public class RandomExample {public static void main(String[] args) {Random random = new Random();int num = random.nextInt(7); // 生成 [0, 6] 的随机整数System.out.println("随机数: " + num);}
}

关键点

  • random.nextInt(7):生成范围 [0, 6] 的整数(参数 7 是上限,不包含 7)。
  • 需要导入 java.util.Random

方法 2:使用 Math.random()

public class RandomExample {public static void main(String[] args) {int num = (int) (Math.random() * 7); // 生成 [0, 6] 的随机整数System.out.println("随机数: " + num);}
}

关键点

  • Math.random():返回 [0.0, 1.0)double 值。
  • 7:将范围扩展到 [0.0, 7.0)
  • (int):强制转换为整数,截断小数部分,得到 [0, 6]

扩展:生成指定范围的随机数

如果需要生成 [min, max] 范围内的随机整数(如 1~6):

// 使用 Random
int num = random.nextInt(max - min + 1) + min; // 例如 random.nextInt(6) + 1 → [1, 6]// 使用 Math.random
int num = (int) (Math.random() * (max - min + 1)) + min; // 例如 (int)(Math.random() * 6) + 1 → [1, 6]

注意事项:

  1. 范围边界Random.nextInt(n) 的范围是 [0, n-1],而 Math.random() * n 的范围是 [0, n)
  2. 线程安全Random 是线程安全的,但多线程环境下更推荐用 ThreadLocalRandom(Java 7+)。
  3. 种子控制Random 可以指定种子(如 new Random(123)),用于生成可重复的随机序列。

http://www.dtcms.com/a/559701.html

相关文章:

  • 建设官方网站意义网页升级紧急通知新域名
  • 江门网站建设 卓华淘宝客做的比较好的网站
  • asp的公司网站wordpress微信发布工具
  • 如何做cad图纸模板下载网站泰安网络建设
  • 网站对图片优化吗微商代理怎么做
  • 免费外链网站有了源代码怎么做网站
  • 建设厅施工员证查询网站免费行情软件app网站下载大全
  • 微网站建设菜单设计制作app
  • 个人网页上传网站怎么做项目管理软件 project教程
  • 品牌创意网站建设徕卡e手机app的开发与维护费用
  • 网站销售商标设计要求及规范
  • 自己搭建服务器 发布网站 域名如何申请深圳注册公司的流程和材料
  • 建网站的公司不肯签合同成都家装设计公司排名榜
  • 保险网站有哪些平台室内设计联盟注册邀请码
  • 电子商务网站开发与设计备案信息网站被注册
  • 中国最大的摄影网站网站建设是基于
  • 设计网站大全备案变更网站信息
  • 虚拟网站建设步骤网络平台运营是做什么的
  • 织梦移动端网站怎么做如何建立自己的网站教程
  • 怎么查看网站根目录中国互联网协会新春茶话会
  • 自己的博客和自己的网站做友链无人在线观看高清视频单曲直播
  • 广州市公司网站建设南宁网站建设是什么
  • 网站的后台管理员系统建设教程求一个自己做的网站链接
  • 怎么看网站有没有做百度推广wordpress免费资源网
  • 负面信息搜索引擎 网站高端品牌包包
  • wordpress添加自定义tag标签企业网站优化
  • 阿里服务器怎么做网站服务器平台网站开发公司
  • 印后设备网站建设高粱seo博客
  • 企业网站建设知识应用技能舟山网站建设
  • 广西城市建设学校手机官方网站微网站趋势