通过“万年历”的编程与改进详解“面向对象的基础知识”

本文详细介绍了如何通过编写万年历来阐述面向对象编程的基础知识,包括包、类、修饰符、静态关键字的概念和用法。讨论了面向对象的封装、抽象、继承和多态四大特征,并通过分析传统写法的缺点,提出了模块化方法的改进方案,以提高代码复用性和可维护性。
摘要由CSDN通过智能技术生成

一、编写“万年历”涉及的基础知识

包:package 为了便于管理大型软件系统中数目众多的类,解决类命名冲突的问题,Java引入了包。
      包相当于一个收纳盒,类相当于收纳盒里面的物品,一个包里面可以有多个类。

      import 导入包的类,比如:import java.util.Scanner;导入了工具(util)的键盘输入类(Scanner)

修饰符:java提供四个修饰符public、private、default、protected。
        (1)public:公共的,实现跨包访问,public修饰的,在任何地方都能访问;跨包访问;
        (2)private:表示私有的,就是说除了自己的class类能直接访问外,其他任何类不能访问;
                解决private局限性的方法:类私有、公开方法;快捷键:Alt+Shift+S  直接生成公开方法;
        (3)default:默认的,作用域范围在自己类里面使用,一般不建议使用;
        (4)protected:和继承特性相关,受保护的,对子女和朋友来说,可以自由使用,其他外部class不能访问。

static 静态修饰符:
        (1)概念:类的静态成员不依赖类的某一实例,可以使用类名直接访问;
        (2)static静态关键字修饰:属性、方法、内部类、代码块;
        (3)static属性:static修饰的资源属于类级别,是全体对象实例共享的资源;
        (4)静态属性:
                <1>使用static修饰的属性,属于类的全体类的实例共享的变量;
                <2>静态属性是在类的加载期间初始化的;
                <3>使用类名.属性访问;
        (5)实例变量:属于对象的属性;使用对象.属性访问

static方法:使用static声明的方法,属于类的方法,一般用来表示工具方法。
                 在类加载以后就可以自己调用,不需要创建任何类的实例对象;

静态代码块:
                静态代码块是在类加载期间运行的代码块,由于类只加载一次,所以静态代码块只执行一次;
                静态代码块用途不是很常见,一般用来在类加载以后初始化一些静态资源时使用。

类:相似/相同的一类事物的集合
.类、对象、实例三者的关系:
                (1)类:是对象的模板,可以实例化对象;
                (2)对象:类的个体;
                (3)实例:实现的对象。

方法:
     概念:方法是完成某一个操作的一系列代码的集合
               方法设计时候的原则是一个方法只做一件事情
     方法格式:由访问【修饰符】 【方法返回值】 【方法名称】 【参数列表】
     方法会隐藏实现的细节,供需求方简单调用

 面向对象的特征:封装【隐藏实现的细节{}】,继承,多态【方法的重载】
       
第一大特征:封装
        1.概念:保证软件部件具有优良的模块性的基础;面向对象的封装就是把描述一个对象的属性和行为的代码封装在一个“模块”中,也就是一个类中,
属性用变量定义,行为用方法进行定义,方法可以直接访问同一个对象中的属性;
        2.目标:“高内聚  低耦合”;
        3.对象是封装的基本单位;

第二大特征:抽象
        1.概念:抽象就是找出一些事物的相似和共性之处,然后就把这些事物归为一类
        2.抽象分类:行为抽象;状态抽象

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值