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

找人做微信网站微信软文范例大全100

找人做微信网站,微信软文范例大全100,北京网站优化方法,建设公司的网站JAVA面向对象——对象和类的基本语法 一、面向对象编程基础 1. 程序中的数据存储方式 基本类型:变量(如 int max 15;)。数据结构:数组(一维/二维)、对象(特殊数据结构,用于存储复…

JAVA面向对象——对象和类的基本语法

一、面向对象编程基础

1. 程序中的数据存储方式
  • 基本类型:变量(如 int max = 15;)。
  • 数据结构:数组(一维/二维)、对象(特殊数据结构,用于存储复杂事物数据)。
2. 对象的本质
  • 定义:对象是一种特殊的数据结构,用于封装事物的属性(数据),代表现实中的事物(如“赵丽颖”对象包含姓名、年龄、身高、体重等属性)。
  • 创建方式:通过类(模板/设计图)使用 new 关键字创建,每 new 一次生成一个新对象。
    Star s1 = new Star(); // 创建对象
    s1.name = "赵丽颖"; // 设置属性
    

二、类的基本语法

1. 类的定义
  • 作用:定义对象的模板,包含属性(成员变量)和行为(成员方法)。
  • 语法结构
    public class 类名 {// 成员变量(属性)数据类型 变量名; // 如 String name; int age;// 成员方法(行为)public void 方法名() {// 方法逻辑}
    }
    
2. 对象的使用步骤
  1. 定义类:设计对象的属性和方法(如 Star 类)。
  2. 创建对象:使用 new 关键字实例化对象(如 Star s1 = new Star();)。
  3. 操作对象:通过对象名访问属性和方法(如 s1.name = "赵丽颖";)。

三、核心概念解析

1. 构造器(Constructor)
  • 作用:创建对象时初始化成员变量。
  • 特点
    • 与类同名,无返回值类型声明。
    • 默认构造器:若未显式定义构造器,系统自动生成无参构造器。
    • 自定义构造器:若定义有参构造器,默认无参构造器会被覆盖,需手动添加无参构造器以保留。
  • 语法示例
    public class Student {private String name;private int age;// 无参构造器public Student() {}// 有参构造器public Student(String name, int age) {this.name = name;this.age = age;}
    }
    
2. this 关键字
  • 作用
    • 指代当前对象,哪个对象调用方法,this 就指向哪个对象。
    • 解决成员变量与方法参数/局部变量同名时的命名冲突问题。
  • 示例
    public class Student {private String name;public void setName(String name) { // 参数名与成员变量同名this.name = name; // 通过 this 访问成员变量}
    }
    
3. 封装(Encapsulation)
  • 定义:面向对象三大特征之一,将数据(成员变量)和操作数据的方法封装在类中,通过控制访问权限实现“合理隐藏,合理暴露”。
  • 实现方式
    • 隐藏属性:用 private 修饰成员变量,禁止外部直接访问。
    • 暴露方法:用 public 修饰 getter/setter 方法,用于读写属性。
  • 示例
    public class Student {private String name; // 私有属性// getter 方法(获取属性)public String getName() {return name;}// setter 方法(设置属性)public void setName(String name) {this.name = name;}
    }
    
4. 实体类(Javabean)
  • 定义:一种符合特定规范的类,用于存储数据,数据与业务逻辑分离。
  • 规范要求
    1. 所有成员变量 private 修饰,提供 publicgetter/setter 方法。
    2. 必须包含无参构造器,有参构造器可选。
  • 应用场景:在软件开发中用于封装数据(如数据库表中的记录),便于数据传输和存储。

四、static 关键字

1. static 修饰成员变量(静态变量/类变量)
  • 特点
    • 属于类,而非单个对象,内存中仅存储一份,被所有对象共享。
    • 访问方式:类名.静态变量(推荐)或 对象名.静态变量(不推荐)。
  • 示例
    public class Student {public static int totalStudents; // 静态变量,记录学生总数private String name;public Student() {totalStudents++; // 每次创建对象时总数加 1}
    }
    
2. static 修饰成员方法(静态方法/类方法)
  • 特点
    • 属于类,可通过 类名.方法名 直接调用,无需创建对象。
    • 限制:静态方法中不能直接访问实例成员(实例变量、实例方法),只能访问静态成员。
  • 应用场景
    • 工具类设计(如 Math 类、自定义的 StringUtils),提供通用功能,避免对象创建开销。
    • 主方法 main 是静态方法,程序入口需直接调用。
  • 示例
    public class Utils {// 静态方法:计算两数之和public static int add(int a, int b) {return a + b;}
    }
    // 调用方式:Utils.add(1, 2);
    
3. 静态方法与实例方法的区别
特征静态方法实例方法
所属对象
调用方式类名.方法名(推荐)对象名.方法名
能否访问静态成员
能否访问实例成员不能
是否存在 this 关键字是(指向当前对象)

五、内存模型(详细解析)

Java程序运行时的内存分配遵循特定的模型,主要分为 栈内存(Stack Memory)堆内存(Heap Memory)方法区(Method Area)(JDK 8及之后称为 元空间 Metaspace)。理解这三部分的作用和数据存储机制,对掌握对象创建、变量作用域及内存管理至关重要。

1. 栈内存(Stack Memory)

作用

  • 存储局部变量(方法内定义的变量、方法参数)和对象引用(如 Star s1 中的变量名 s1)。
  • 遵循**先进后出(LIFO)**的栈结构,用于管理方法的调用和执行顺序。

特点

  • 线程私有:每个线程拥有独立的栈空间,线程结束后栈内存自动释放。
  • 存储内容
    • 基本数据类型的局部变量(如 int age = 18; 中的 age)。
    • 对象引用变量(存储对象在堆内存中的地址,如 s1 指向 new Star() 的地址)。
  • 内存大小受限:栈的大小由JVM启动参数配置(默认较小,如1MB),若方法嵌套调用过深易引发 栈溢出(StackOverflowError)

示例

public class Test {public static void main(String[] args) {Star s1 = new Star(); // s1 是栈内存中的对象引用,指向堆中的 Star 对象int num = 10; // num 是栈内存中的基本类型变量print(s1, num); // 调用方法时,参数 s1 和 num 压入栈}public static void print(Star s, int n) {// s 和 n 是栈内存中的局部变量}
}
2. 堆内存(Heap Memory)

作用

  • 存储对象实例数组,是对象创建的唯一区域(通过 new 关键字分配内存)。
  • 对象的成员变量(属性)在此分配空间并存储具体数据(如 s1.name = "赵丽颖" 中的 name 值)。

特点

  • 线程共享:所有线程均可访问堆内存中的对象。
  • 动态分配:内存分配灵活,大小由JVM动态管理(可通过 -Xms-Xmx 参数调整)。
  • 垃圾回收(GC):JVM定期回收不再被引用的对象,避免内存泄漏。
  • 存储内容
    • 对象的实例数据(如 Star 对象的 nameage 等属性值)。
    • 数组的元素(如 int[] arr = {1, 2, 3}; 中的数组元素)。

示例

Star s1 = new Star(); // 堆内存中创建 Star 对象,存储属性值
s1.name = "赵丽颖"; // "赵丽颖" 存储在堆中对象的 name 属性里
s1.age = 36; // 36 存储在堆中对象的 age 属性里
  • 内存地址:堆中的对象有唯一的内存地址(如 0x15aeb7ab),栈中的引用变量指向该地址。
3. 方法区(Method Area)

作用

  • 存储类的元数据(字节码文件 .class)、静态变量(static)常量(final)方法定义(如方法名、字节码指令)。
  • 属于线程共享区域,供全程序访问。

特点(JDK 8及之后)

  • 元空间(Metaspace):方法区的实现由永久代(PermGen)改为元空间,内存分配从本地内存(Native Memory)中划分,避免了永久代的内存溢出问题。
  • 存储内容
    • 类的结构信息(类名、父类、接口、成员变量和方法的定义)。
    • 静态变量(如 public static int totalStudents;)。
    • 字面量(如字符串常量 "赵丽颖")和符号引用。
    • 方法的字节码指令(如 printTotalScore() 方法的执行逻辑)。

示例

public class Star {static String country = "中国"; // 静态变量 country 存储在方法区final double PI = 3.14; // 常量 PI 存储在方法区String name; // 成员变量的定义存储在方法区,值存储在堆中public void printInfo() { // 方法定义存储在方法区System.out.println("姓名:" + name);}
}

六、关键总结

  1. 对象与类的关系:类是模板,对象是实例;通过 new 关键字由类创建对象。
  2. 封装的核心:隐藏属性,暴露接口,保证数据安全性和代码可维护性。
  3. static 的作用:实现类级别的数据和方法共享,常用于工具类和全局数据管理。
  4. 构造器的职责:确保对象创建时成员变量被正确初始化,支持重载以灵活初始化。
http://www.dtcms.com/wzjs/123028.html

相关文章:

  • 学php做网站2020年关键词排名
  • 网站url结构seo外链发布平台
  • 茶叶网站的建设策划书武汉外包seo公司
  • 企业网站页面宽哪里设置产品网络营销
  • jsp语言做网站福州短视频seo获客
  • 假网站的域名关键词排名查询工具免费
  • 做网站seo优化总结滨州seo招聘
  • 网站建设体会宁德seo公司
  • 怎么查工程中标单位搜索引擎营销优化
  • 深圳建设交易中心官网推广优化网站排名教程
  • 卖汽车配件怎么做网站小程序模板
  • 国外企业网站模板网站优化招商
  • 网站产品展示怎么做中国刚刚发生的新闻
  • 网站建设人员架构友情链接有什么用
  • 网站seo推广优化教程百度推广关键词查询
  • 高密网站制作如何对网站进行推广
  • 市环保局网站建设方案在线收录
  • 宁波网站建设icp备百度浏览器网页版入口
  • 自网站EXCel数据导入怎么做2345浏览器官网
  • 苏州前程无忧官上做网站信息流广告有哪些投放平台
  • 湛江建站免费模板百度软文推广怎么做
  • asp.net 网站运行助手做电商需要学哪些基础
  • 做网站的宽和高有限制吗简述提升关键词排名的方法
  • 个人网站可以做地方网站制作优化
  • dreamweaver做网站教学列表网推广效果怎么样
  • 钢琴网站建设原则百度推广登录平台网址
  • c 网站开发案例大全商铺营销推广方案
  • wordpress 页面重定向循环长沙网站seo方法
  • c 做网站源码实例天津推广的平台
  • 网站建设评比办法营销网站建设创意