类和对象

本文深入解析Java中的类和对象、构造函数、静态变量与方法、多态、接口、继承、封装、抽象类等核心概念,揭示其工作原理及应用场景。

  --------------------类和对象-----------------------
  1、没有定义构造函数却可以使用?
  在用户没有定义任何构造函数的情况下,JVM会自动生成一个无参的默认构造函数
  2、在同一个类中要去调用属性或者方法使用this引用
  java中的this引用:每一个类都有一个this引用,this引用指的当前对象本身。
  3、构造函数可以有多个,多个构造函数还是方法名相同但丝毫参数不同,
  这样我们可以使用不同的构造函数去构造不同的对象
  4、构造函数来讲,在实例化对象的时候只调用一次,而成员可以被调用多次

 

  静态变量:变量名前加static关键字 类中所有对象所共享
  对于静态变量来说,它是被存储在一个公共的地址,因为是一个公共的地址,
  所以某一个对象修改它,对于另外一个对象就是可见的。
 
  静态方法:方法名前加static关键字
  特性:静态方法来讲不能访问成员变量,不能调用成员方法
       没有this引用
 
  静态变量,静态方法属于类,推荐使用类名.去调用,当然使用对象.去
  调用也不会出错。

------------------多态-----------------------
  多态就是用基类引用,引用不同的派生类对象,通过基类的引用变量调用同名覆盖
  方法,这个基类引用引用了哪个派生类对象,就会调用哪个派生类对象重写的方法
 
  它的好处就是,在代码设计的时候,不用给每一个派生类都提供相应的入口,而
  是用基类引用接收所有的派生类对象,然后调用同名覆盖方法,实现多态调用
  多态调用的实现(依赖函数的动态绑定实现的)

  ----------------接口---------------
   public static final(常量)静态变量
   接口方法默认为  public abstract void ....
 特征:
  接口不能直接使用new操作符创建一个接口对象
  接口可以看作一个特殊的类
  接口只能有方法声明
  实现接口;implement关键字
  接口中的功能和实体是“有”的关系;
  接口中的变量:public abstract final;
  接口可以有多个实现,接口与接口之间也是可以相互继承的;
  接口定义的变量都是public static final 修饰的,定义的方法都是public abstract 修饰的,而且不能实现代码实现;
  jdk1.8之后
  接口可以提供默认方法:default
  允许公有的静态方法存在

  ------------------继承-------------------------------
  封装属性访问-》getter setter 方法
  super引用:基类对象应用,
  重载:参数列表不同,方法名相同;
  重写:1.参数列表相同,方法名相同;
        2.在具有继承关系的不同类里面;
  区别:1.2.
        3:返回值类型(重写相同;重载可以不同)
  对象转换:
  向上转换:子类的对象赋予基类的引用;
  向下转换:
  声明时是什么类型,编译器就认为是什么类型,(强转);
  转换对象必须是子类的实例
  instanceOf关键字;(表示判断)
  obj instanceOf class

 -------------- 封装-----------------
  隐藏不想公开给用户的实现
  属性: private去修饰
  方法: private去修饰
  1) 把属性隐藏起来
  2) 把细节隐藏起来,只暴露一些供用户调用的接口
 
 --------------抽象类--------------
  1.类定义的前面添加abstract
  2.和普通类最大的区别是抽象类不能实例化对象
  3.抽象类可以定义类变量和实例变量,类方法和实例方法,抽象方法,

  一般定义类  -   抽象某个实体的类型
  但是基类类型 - 不是为了抽象某个实体的类型而定义的,它是为了
  1.把派生类公共的成员抽取出来,放到基类里面,通过继承达到代码的复用
  2.在基类里面给所有派生类保留统一的抽象方法,等待派生类重写,实现多态的使用
  基类 - 动物
 
  抽象方法:
  1.是在实例方法的返回值前面添加abstract,代表该方法不用提供实现
  2.抽象方法一般放在基类里面
  3.拥有抽象方法的类,一定得定义成抽象类
 
  拥有抽象方法的类  一定是 是抽象类
  抽象类  不一定拥有 抽象方法

数据驱动的两阶段分布鲁棒(1-范数∞-范数约束)的电热综合能源系统研究(Matlab代码实现)内容概要:本文围绕“数据驱动的两阶段分布鲁棒(1-范数∞-范数约束)的电热综合能源系统研究”展开,提出了一种结合数据驱动分布鲁棒优化方法的建模框架,用于解决电热综合能源系统在不确定性环境下的优化调度问题。研究采用两阶段优化结构,第一阶段进行预决策,第二阶段根据实际场景进行调整,通过引入1-范数∞-范数约束来构建不确定集,有效刻画风电、负荷等不确定性变量的波动特性,提升模型的鲁棒性实用性。文中提供了完整的Matlab代码实现,便于读者复现验证算法性能,并结合具体案例分析了不同约束条件下系统运行的经济性可靠性。; 适合人群:具备一定电力系统、优化理论Matlab编程基础的研究生、科研人员及工程技术人员,尤其适合从事综合能源系统、鲁棒优化、不确定性建模等相关领域研究的专业人士。; 使用场景及目标:①掌握数据驱动的分布鲁棒优化方法在综合能源系统中的应用;②理解1-范数∞-范数在构建不确定集中的作用差异;③学习两阶段鲁棒优化模型的建模思路Matlab实现技巧,用于科研复现、论文写作或工程项目建模。; 阅读建议:建议读者结合提供的Matlab代码逐段理解算法实现细节,重点关注不确定集构建、两阶段模型结构设计及求解器调用方式,同时可尝试更换数据或调整约束参数以加深对模型鲁棒性的理解
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值