JAVA面向对象第一天
一. 知识点:
1. 类和对象
二. 关键问题(理论):
1. 简述什么是类、什么是对象
2. 简述基本类型变量与引用类型变量赋值时的差别
3. 简述null的含义
三. 关键代码(操作):
1. 经典案例(课上完成):
1) 定义Tetris项目中的Cell类,要求如下: (8)
定义Cell类来表示格子,类中需要包含两个成员变量:
row表示行号,类型为int
col表示列号,类型为int
2) 实现格子下落、左移及获取格子位置信息的功能,要求如下: (15)
实现格子的下落功能,即: 为 Cell类定义下落的方法,调用该方法后,格子的位置将下降一行。
实现格子的左移功能,即: 为 Cell类定义左移方法:调用左移方法,并传入需要移动的列数,则格子将向左移动相应的列数.
实现格子的getCellInfo方法,调用该方法,即可打印格子的位置信息。
修改: 添加格子的右移方法,调用该方法后,格子的位置右移一格
3) 创建Cell对象并添加打印方法,要求如下: (20)
设置格子的坐标,然后在界面上打印显示格子的位置信息。
修改:创建Cell对象,调用getCellInfo()方法后,输出格子行号和列号
2. 作业(课下完成):
1) 创建Car汽车类,包含: (25)
属性:brand(品牌),price(价格),color(颜色)
方法:show(),用于输出汽车对象的3个属性
startup(),用于输出brand品牌的汽车启动了
创建CarTest类,在main()中:
创建Car的两个对象,并给属性赋值,再调用方法
2) 创建Cell对象cell1,声明Cell型引用cell2并赋值为cell1 (10)
设置cell1的row为2,设置cell2的row为5,输出cell1的row的值

JAVA面向对象第二天
一. 知识点:
1. 方法的重载
2. 构造方法
3. 引用类型数组
二. 关键问题(理论):
1. 简述什么是方法的重载
2. 简述构造方法的作用、构造方法如何调用?
3. 简述java中this关键字的含义
三. 关键代码(操作):
1. 经典案例(课上完成):
1) 重载drop方法,moveLeft方法,要求如下: (10)
调用 moveLeft 方法,不用传入参数,格子即左移一列
调用 drop 方法,传入下落的行数后,格子可以下落多行
修改: 重载moveRight()方法,传入参数,格子位置右移多格
2) 给Cell类添加构造方法,要求如下: (5)
为 Cell 类定义有参构造方法,并在构造方法中初始化 Cell 的行和列
3) 给Cell类添加重载的构造方法,要求如下: (10)
为 Cell 类定义默认构造方法
为 Cell 类定义构造方法,要求该构造方法接收一个int类型的参数
4) 定义Tetris项目中的T类和J类并测试 (60)
修改:定义L类并测试
2. 作业(课下完成):
1) 为Car类定义构造方法: (10)
1.Car(String brand,double price,String color),方法中分别给3个属性赋值
2.Car(),方法中调用Car3个参数构造方法,数据为"奥迪Q5",200000,"白色"
2) 定义Tetris项目中的O类包含: (20)
属性: 格子数组cells
构造方法: O(int row,int col),构造方法中对cells进行初始化
方法: drop()下落 moveLeft()左移 moveRight()右移 print()输出格子坐标
创建OTest测试类,在main()中:
创建O类对象,对属性赋值并调用方法。
3) 定义Tetris项目中的I类、S 类、Z类------要求同O类 (60)

JAVA面向对象第三天
一. 知识点:
1. java内存管理
2. 继承
二. 关键问题(理论):
1. 简述java堆中用于存储什么、栈中用于存储什么
2. 简述java是否会发生内存泄漏
3. 简述继承的作用、继承通过什么关键字实现
三. 关键代码(操作):
1. 经典案例(课上完成):
1) 构建Tetromino父类,重构T和J类并测试 (40)
修改: 重构L类并测试
2. 作业(课下完成):
1) 创建Person父类,包含: (40)
属性: name(姓名),age(年龄),address(家庭地址)
方法: show()---问好方法,用于输出所有属性
创建Student子类,继承Person类,包含:
属性: className(班级名称)
方法: study()-----输出name在学习
创建Teacher子类,继承Person类,包含:
属性: salary(工资)
方法: teach()-----输出name在授课
创建PersonTest类,main()中:
创建Student类对象zs,对其所有属性赋值,再调用其所有方法
创建Teacher类对象wkj,对其所有属性赋值,再调用其所有方法
2) 创建Test类,main()中: (10)
创建Person类型引用指向Student类的对象
通过该引用访问其所能访问的所有属性并调用其所能调用的所有方法
3) 重构O类、I类、S类、Z类并测试 (30)

JAVA面向对象第四天
一. 知识点:
1. 方法的重写、重写与重载的区别
2. 封装
3. 访问修饰符
4. static
5. final
二. 关键问题(理论):
1. 简述重写与重载的区别
2. 简述静态变量和实例变量的区别
3. 简述java的访问权限范围
4. 简述何时使用静态变量、何时使用静态方法
三. 关键代码(操作):
1. 经典案例(课上完成):
1) 重写T类和J类的print方法并测试,要求如下: (10)
打印显示前输出"i am a T"或"i am a J"
修改:重写O类的print方法并测试,打印显示前输出"i am a O"
2. 作业(课下完成):
1) 在Student类中,重写Person类的show()方法, (10)
输出:"大家好,我是学生,我叫name,今年age岁了,家住address,所在班级为className"
在Teacher类中,重写Person类的show()方法,
输出:"大家好,我是老师,我叫name,今年age岁了,家住address,工资为salary"
2) 现在做咱们班级的管理系统,需设计一个学生类Student,类中包含: (15)
实例变量:name(姓名),age(年龄),adddress(地址)
静态变量:className(班级名称)
将className设置为咱们班的班级名称
创建两个Student对象访问实例变量
3) 重写L类、I类、O类、S类、Z类的print方法并测试 (20)
打印显示前输出相应的提示

JAVA面向对象第五天
一. 知识点:
1. 抽象类
2. 接口
二. 关键问题(理论):
1. 简述何为抽象方法
2. 接口是否可继承接口、抽象类是否可实现接口、 抽象类是否可继承实体类
3. 简述接口中可以包含的内容
三. 关键代码(操作):
1. 经典案例(课上完成):
1) 根据周长计算不同形状图形的面积,要求如下: (30)
计算多种图形的面积,并比较各种图形面积的最大值。
使用抽象类及其子类的方式实现本案例。
修改:定义三角形类继承Shape,实现其area()方法
注: 计算公式为0.0517*c*c
2) 银行卡系统(实现银联接口),要求如下: (40)
银联接口,用于描述银联统一制定的规则,该接口提供检测密码方法、取钱方法以及查询余额方法。
工商银行接口,用于描述工商银行发行的卡片功能,在满足银联接口的规则基础上,增加了在线支付功能。
农业银行接口,用于描述中国农业银行发行的卡片功能,在满足银联接口的规则基础上,增加了支付电话费的功能。
实现工商银行接口和农业银行接口,并进行测试。
2. 作业(课下完成):
1) 定义正六边形类继承Shape,实现其area()方法 (8)
计算公式详见课后作业
2) 定义建设银行接口CCB继承银联接口,并实现该接口 (15)
要求在银联基础之上增加支付燃气费功能
3) 声明常量WIDTH表示窗口的宽,常量HEIGHT表示窗口的高,值自拟 (5)

JAVA面向对象第六天
一. 知识点:
1. 多态
2. 内部类
3. 面向对象汇总
二. 关键问题(理论):
1. 面向对象的三个基本特征是什么
2. 简述抽象类与接口的区别
3. 简述何为向上造型、能够造型成的类型有什么
三. 关键代码(操作):
1. 经典案例(课上完成):
1) 农行ATM机系统,详细要求如下: (40)
1.1) 中国农业银行的ATM机对所有银联卡提供检查密码功能、取款功能以及 查询余额功能。
1.2) 如果为农行的卡,可以实现支付电话费功能。
2. 作业(课下完成):
1) 在ABCATM类中,添加方法,用于查询余额 (10)
2) 声明接口MyInter,包含抽象方法show(),say() (8)
创建类InnerTest,在main()中:
创建MyInter的匿名内部类对象,调用show()方法

java基础学习周计划之2--面向对象的更多相关文章

  1. java基础学习周计划之1--语言基础

    JAVA语言基础第一天一. 知识点:1. 认识Linux操作系统2. JAVA开发环境3. Eclipse IDE二. 关键问题(理论):1. Linux中常用命令pwd.ls.cd的作用2. 简述J ...

  2. java基础学习周计划之3--每周一练

    每周一练第一周 一. 关键代码:1.斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...数列第一项和第二项是1, 从第三项开始, ...

  3. Java基础学习总结(6)——面向对象

    一.JAVA类的定义 JAVA里面有class关键字定义一个类,后面加上自定义的类名即可.如这里定义的person类,使用class person定义了一个person类,然后在person这个类的类 ...

  4. 尚学堂JAVA基础学习笔记

    目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...

  5. Java基础学习笔记总结

    Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...

  6. 转载-java基础学习汇总

    共2页: 1 2 下一页  Java制作证书的工具keytool用法总结 孤傲苍狼 2014-06-24 11:03 阅读:25751 评论:3     Java基础学习总结——Java对象的序列化和 ...

  7. JAVA基础学习-集合三-Map、HashMap,TreeMap与常用API

    森林森 一份耕耘,一份收获 博客园 首页 新随笔 联系 管理 订阅 随笔- 397  文章- 0  评论- 78  JAVA基础学习day16--集合三-Map.HashMap,TreeMap与常用A ...

  8. [转帖]java基础学习总结——多态(动态绑定)

    https://www.cnblogs.com/xdp-gacl/p/3644035.html 多态的概念 java基础学习总结——多态(动态绑定) 一.面向对象最核心的机制——动态绑定,也叫多态

  9. Java基础学习(2)

    Java基础学习(二) 面向对象 对象:客观存在的事物 面向对象:人具体关注的事物的某些信息 类:是模子,确定对象会拥有的特征(属性)和行为(方法) 对象的属性:对象具有的各种特征 对象的方法:对象能 ...

随机推荐

  1. 为何我会喜欢封闭的apple?

    原来本猫喜欢的手机是简单的塞班系统,nokia的E72i,超经典吧!就是最近都有把它充满电重新拿出来用的冲动呀.可惜无奈的是上面的应用太少呀!原来PC和笔记本装的是各种清一色的windows系统,从3 ...

  2. IIS服务器如何抗住高并发的客户端访问

    今天被问到一个问题,如果你在阿里云上部署了一个IIS服务器,此时如果有成千上万的客户端来访问,你将如何设计?我东扯扯西谈谈,说加个线程池来处理,在加个请求队列.当时觉得说的没有问题,现在想想,服务器自 ...

  3. Dubbo基本特性之泛化调用

    Dubbo 是支持泛化调用的,什么是泛化调用呢?泛化调用的好处是什么呢,泛化调用说白一点就是服务消费者并没有服务的接口. 在<Dubbo入门-搭建一个最简单的Demo框架>一文中,我们已完 ...

  4. docker的安装和技巧

    工作了有一段时间,开发环境中需要docker环境,但是docker一直不算很熟,之前一直是利用yum安装,但是yum安装真的很费劲,所以总结了一些经验给大家: 1,利用yum直接安装 官网是直接给了y ...

  5. Kali Linux Live USB初始化+使用日记

    1.Live USB制作官方guide:Making a Kali Bootable USB Drive:https://docs.kali.org/downloading/kali-linux-li ...

  6. linux服务器上部署项目,同时运行两个或多个tomcat

    在阿里云服务器上部署项目的时候,想使用阿里云提供的负载均衡服务并创建两个监听(如图), 但需要一台服务器提供两个端口,于是就请教前辈并查询资料,得知: 一台服务器提供两个端口,有两种方式: 1.一个t ...

  7. python 要掌握面向对象,你得会做这些题吗?

    1,面向对象三大特性,各有什么用处,说说你的理解. 继承:解决代码重用问题 多态:多态性,可以在不考虑对象类型的情况下而直接使用对象 封装:明确的区分内外,控制外部对隐藏属性的操作行为,隔离复杂度 2 ...

  8. NopCommerce是什么(转自CNSD)

    NopCommerce是什么 nopCommerce--最好的免费购物车!nopCommerce是一个开源的解决方案.它是一个具有综合功能.对于新在线业务来说亦易于使用的解决方案,同时它也是一个功能强 ...

  9. 虚拟机配置Openstack常见问题汇总

    之前配置了openstack,遇到一些问题,现在将问题全部汇总记录在这里. (1)问题:主机名字修改不了: 原因:没有进入root状态:或者没有正确打开文件,要打开的是/etc/hostname,结果 ...

  10. Maven学习(一)-- Maven入门

    摘自:http://www.cnblogs.com/xdp-gacl/p/3498271.html 一.Maven的基本概念 Maven(翻译为"专家","内行" ...