oop(面向对象编程学习3)

oop(Object Oriented Programming)面向对象编程

Day05:
1.static关键字
static只能修饰成员,英文含义是静态(节省内存)
1)修饰属性
1.1)被static修饰的属性,所有对象共享同一个值
1.2)所有被static修饰的属性值会保存在内存的方法区中
1.3)当该类的所有对象共享同一个资源时,将这个资源设置为静态,能够减少内存空间
1.4)官方建议静态属性使用类名调用
1.5)静态属性也称之为类属性
2)修饰方法
2.1)使用static修饰方法,该方法称之为静态方法
2.2)静态方法可以直接使用类名调用,无需实例化对象
2.3)静态方法无法调用普通(实例)属性和普通(实例)方法
因为静态方法中没有this关键字
2.4)如果一个方法不需要访问当前类中的实例成员就可以定义成静态的
2.5)静态方法不能被重写!!!
3)修饰初始化块
3.1)什么是初始化块
在代码中直接编写{},{}中的内容就是初始化块,初始化块中的内容会在构造
方法运行之前运行(实例化对象一次运行一次)
3.2)被static修饰的初始化块只会运行一次
3.3)运行时机是JVM使用这个类之前,JVM加载类时运行静态块
加载类的情况:
1.实例化对象
2.使用类名调用静态成员
3.反射相关技术(第二阶段学习)
2.java中的常量
1)不会变化的值就是常量(比如:数学中的圆周率 一周的天数)
2)为什么需要常量,方便程序员使用\调用不会变化的数值
3)常量的特性:不能修改 所有对象共享
4)常量一定是成员
5)定义一个常量
public static final<类型><常量名>=<数值>;
public static final double PI=3.1415926;
6)常量使用类名调用(static修饰),不能修改(因为final修饰)
7)常量的命名规范:
所有字母均大写
多个单词用_分隔
8)常量赋值有两种方式
推荐:声明的同时赋值(效率高)
语法也允许在静态块中赋值(没有编译时替换的效果)
9)常量在声明的同时赋值,代码中调用这个常量的位置编译时会替换成这个常量值
无需加载常量所在的类,提高运行效率
3.抽象类
1)什么是抽象类
不存在对象的类型,就是抽象类,一般用于父类
2)抽象类的特征呢
2.1抽象类不能实例化对象
2.2抽象类中能编写抽象方法
2.3抽象类中的抽象方法数量不限
3)使用abstract(抽象)修饰类即可
4.抽象方法
1)什么是抽象方法
不能编写具体实现的方法叫做抽象方法
2)抽象方法的特征
2.1抽象方法不能写方法体
2.2抽象方法必须在子类中被重写,除非子类也是抽象类
2.3抽象方法必须在抽象类中
3)怎么定义抽象方法
在方法的返回值类型前
编写abstract
编写后这个参数列表后面只能跟";"(没有方法体)
5.抽象类的好处
1)抽象类不能实例化只能作为父类提供一个公共的数据结构,简化编程
2)子类中必须重写父类的抽象方法,约束子类行为,更加自然的使用向上造型和方法重写
ps:final关键字和abstract关键字 矛盾,不能同时修饰一个内容

Day06:
内部类
1.什么是内部类
    一个类内部定义另一个类
    我们将外部的类称为outer,内部类称为inner
2.内部类的形式
    在java中有很多不同形式的内部类
    2.1成员内部类
    在类中的成员位置声明\定义类的结构
    特性:1)内部类可以访问外部类的私有成员
            2)当内部类和外部类有同名成员时,内部类可以使用
             <外部类类名>.this.<成员名>来访问 !!!
            3)通常情况下,内部类只会在外部类中使用,实例化内部类对象,可以访问
              内部类的私有成员
            4)如果非要在其它类中实例化内部类对象的话
              Outer.Inner inn=new Outer().new Inner();
            PS.所有的内部类都有独立的class文件
           
    2.2匿名内部类
        1)什么是匿名内部类?
            通常情况下,在方法中,通过继承一个类或实现一个接口
            类创建的没有名称的类
        2)匿名内部类的特性
            2.1可以使用外部类的私有成员
            2.2内部类和外部类的成员同名时
                使用<外部类名>.this.<成员>
                来指定外部类的成员
            2.3匿名内部类创建的对象,相当于这个类的子类对象,一般在方法中使用
            2.4如果这个类的对象只在某一个方法中使用一次的话,可以使用匿名内部类,
                减少项目中java文件的数量
            2.5匿名内部类可以使用其所在方法的局部变量,但是要将其视为被final修饰的
                局部变量(值能被赋值一次)        
                在JDK1.6之前,匿名内部类中使用的方法中的局部变量必须使用final修饰
                PS.所有的内部类都有独立的class文件
               
3.记时器
    1)什么是计时器
    定时或周期性的调用一个方法的特殊类
    2)每隔2秒种
    输出一次:猥琐发育,别浪!!!
    3)使用步骤:
        3.1实例化Timer对象(java.util)
        3.2使用匿名内部类来实例化
            TimerTask类的子类
            重写run方法
        3.3在方法中使用Timer调用schedule定义间隔时间(单位是毫秒)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园的建设目标是通过数据整合、全面共享,实现校园内教学、科研、管理、服务流程的数字化、信息化、智能化和多媒体化,以提高资源利用率和管理效率,确保校园安全。 智慧校园的建设思路包括构建统一支撑平台、建立完善管理体系、大数据辅助决策和建设校园智慧环境。通过云架构的数据中心与智慧的学习、办公环境,实现日常教学活动、资源建设情况、学业水平情况的全面统计和分析,为决策提供辅助。此外,智慧校园还涵盖了多媒体教学、智慧录播、电子图书馆、VR教室等多种教学模式,以及校园网络、智慧班牌、校园广播等教务管理功能,旨在提升教学品质和管理水平。 智慧校园的详细方案设计进一步细化了教学、教务、安防和运维等多个方面的应用。例如,在智慧教学领域,通过多媒体教学、智慧录播、电子图书馆等技术,实现教学资源的共享和教学模式的创新。在智慧教务方面,校园网络、考场监控、智慧班牌等系统为校园管理提供了便捷和高效。智慧安防系统包括视频监控、一键报警、阳光厨房等,确保校园安全。智慧运维则通过综合管理平台、设备管理、能效管理和资产管理,实现校园设施的智能化管理。 智慧校园的优势和价值体现在个性化互动的智慧教学、协同高效的校园管理、无处不在的校园学习、全面感知的校园环境和轻松便捷的校园生活等方面。通过智慧校园的建设,可以促进教育资源的均衡化,提高教育质量和管理效率,同时保障校园安全和提升师生的学习体验。 总之,智慧校园解决方案通过整合现代信息技术,如云计算、大数据、物联网和人工智能,为教育行业带来了革命性的变革。它不仅提高了教育的质量和效率,还为师生创造了一个更加安全、便捷和富有智慧的学习与生活环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值