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

如何在电脑上建立网站做网站的需求调研

如何在电脑上建立网站,做网站的需求调研,免费素材网站哪个最好,利润很吓人10个冷门创业四、作用域 在 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/426006.html

相关文章:

  • 怎么编辑网站天津建设局网站
  • 国内做AI视频网站免费观看学院网站设计方案
  • 国外购买域名网站企业网站开发用什么语言写
  • 网站建设 课程sem扫描电镜
  • 内蒙建设厅投诉网站官方网站下载钉钉
  • 有源码做网站个人网站做淘宝客违规
  • 万宁网站建设淄博专业网站建设哪家专业
  • 网站打开速度规定多长时间深圳网站建设李天亮
  • 个人网站搭建详细步骤分类网站怎么做项目
  • 市场策划网站Wordpress上传万网空间
  • 主流做网站wordpress媒体库的目录错误
  • 做网站好找工作吗餐饮企业网站建设方案书
  • php网站如何做多语言网络设计师好找工作吗
  • 专门做财经的网站怎样下载字体到wordpress
  • nginx 做udp网站网站开发中效率较高的编程语言
  • 有做外贸个人网站在线制作图谱
  • 怎样建设那种游戏网站wordpress 特点
  • 用html5制作个人网站微信商城网站模板
  • 上海建设行政主管部门网站建设一个旅游网站的目的是什么
  • 网站程序是什么?无锡网络推广外包
  • 网站标签名词wordpress wp_redirect
  • 因网站开发需要网页设计入门模板
  • 手机建设银行新网站工程信息网排名
  • 网站开发的几个步骤织梦企业门户网站
  • 国外做的比较好的购物网站市场营销平台
  • 用cms建设网站课程宅门梧州网站建设哪家好
  • 网站公司云建站怎么样app001推广平台
  • 注册网站能赚钱吗asp.net 网站开发框架
  • 利用阿里云虚拟主机做网站全屋定制家具品牌排行榜前十名
  • app与网站网站 防攻击