学号 20175223 《Java程序设计》第4周学习总结

教材学习内容总结

  • 第五章要点:

    • 要点1:子类与父类:extends、类的树形结构;
    • 要点2:子类的继承性:同一包中与不在同一包中的继承性、UML图、protected;
    • 要点3:子类与对象:特点、instanceof运算符;
    • 要点4:成员变量的隐藏和方法重写;
    • 要点5:super关键字、final关键字;
    • 要点6:对象的上转型对象,继承与多态;
    • 要点7:abstract类与abstract方法;
    • 要点8:面向抽象编程;
    • 要点9:开-闭原则。

教材学习中的问题和解决过程

1. 编程实现输入平方倒置的功能

要求:命令行传入数组;重点:命令行参数。

  • 问题1解决方案:

    如何实现命令行传入参数?

    public static void main(String [] args)中,Java程序运行时,会调用main方法,args就是命令行参数。
public class xxxx {
public static void main (String args[]) {
for(String arg : args){
System.out.print(arg+" ");
}

for(String arg : args)for each用法,历遍数组args所有元素。

使用命令行输入参数:

java xxxx 1 2 3 4

输出如下:

//java xxxx 1 2 3 4
1 2 3 4

2. 对象的上转型对象。

什么是对象的上转型对象?

尝试写一个程序实验学习:

class Material {        //定义父类:材料
void provision(String material, String color) {
System.out.println(material+"有光泽:"+color);
}
void fatherExtra() {
System.out.println("This is fatherExtra.");
}
} class Solid extends Material { //定义子类:固体
void provision(String solid, String solidColor) {
System.out.println(solid+"有金属光泽:"+solidColor);
}
void extra() {
System.out.println("This is extra.");
}
} public class Instance {
public static void main(String[] args) {
Material metal;
Solid gold = new Solid();
metal = gold; //metal 是 Solid 对象 gold 的上转型对象
metal.provision("gold", "golden");
gold.provision("gold", "golden");
//metal.extra(); // extra 方法是子类 Solid 新增的方法,父类中不存在,所以无法使用
gold.extra(); // extra 方法是子类 Solid 新增的方法,对象 gold 可使用 metal.fatherExtra(); //gold 的上转型对象也可以使用 Solid 的父类 Material 的方法
//提问:子类对象的上转型对象与父类对象的区别? Solid metal_2 = (Solid)metal; //创建一个新对象 metal_2,把上转型对象强制转化为子类的对象
metal_2.extra();
//metal.extra(); // extra 方法依然无法使用
}
}

3. Shell脚本学习笔记二:字符串

20175223的Shell脚本学习笔记二:字符串

代码调试中的问题和解决过程

1. Integer.parseInt(String s) 的注意事项

使用Integer.parseInt(String s)的简单程序:

import java.util.Scanner;

public class test {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
String s = reader.nextLine();
int num = Integer.parseInt(s);
System.out.println(num);
}
}

执行输入命令时,输入 123123 ,输出 123123

注意Integer.parseInt(String s) 只能将 字符串 类型的 整数 数字转化为 int 类型的数字。

要转化的字符:不可是非数字的字符(英文、中文、特殊字符等),不可是有小数的数字字符(1.0、12.3等)。

如果执行输入命令时,输入 ThisIsNotANumber1.0 ,报错:

Exception in thread "main" java.lang.NumberFormatException: For input string: "ThisIsNotANumber"
//Exception in thread "main" java.lang.NumberFormatException: For input string: "1.0"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at test.main(test.java:7)

[代码托管]

  • 代码提交过程截图:



  • 代码量截图:

其他(感悟、思考等,可选)

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 322/322 1/1 23/23
第二周 520/842 3/4 25/48
第三周 458/1300 2/6 16/64
第三周 914/2214 2/8 21/85
  • 计划学习时间:20小时

  • 实际学习时间:21小时

参考资料

学号 20175223 《Java程序设计》第4周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 学号20145303 《Java程序设计》第一周学习总结

    学号20145303 <Java程序设计>第一周学习总结 教材学习内容总结 *dos命令行: dir:列出当前目录下的文件及文件名 md:创建目录 rd:删除目录.为空时文件夹(文件夹为空 ...

  3. 学号20145322 《Java程序设计》第一周学习总结

    学号20145322 <Java程序设计>第一周学习总结 教材学习内容总结 Java诞生于Sun公司,于1998年12月4日发布J2SE,约以两年为一周期推出重大版本更新. 2010年Or ...

  4. 201521123061 《Java程序设计》第九周学习总结

    201521123061 <Java程序设计>第九周学习总结 1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1 ...

  5. 201521123038 《Java程序设计》 第九周学习总结

    201521123038 <Java程序设计> 第九周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 ...

  6. 201521123045 <java程序设计>第11周学习总结

    201521123045 <java程序设计>第11周学习总结 1. 本周学习总结 2. 书面作业 2. 书面作业 Q1.1.互斥访问与同步访问完成题集4-4(互斥访问)与4-5(同步访问 ...

  7. 20175313 张黎仙《Java程序设计》第九周学习总结

    目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...

  8. 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结

    20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...

  9. 2018-2019-3《Java程序设计》第二周学习总结

    学号20175329 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结      第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨 ...

  10. # 20175329 2018-2019-2 《Java程序设计》 第二周学习总结

    学号 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结      第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨论一下JAVA与 ...

随机推荐

  1. winfrom进程、线程、用户控件

    一.进程 一个进程就是一个程序,利用进程可以在一个程序中打开另一个程序. 1.开启某个进程Process.Start("文件缩写名"); 注意:Process要解析命名空间. 2. ...

  2. FangDD Java编程规范

    我们采用<Oracle/Sun原生的Java编程规范>和<Google Java编程规范> Google Java编程风格指南 January 20, 2014 作者:Haws ...

  3. 千行代码入门Python

    这个是从网上找到的一份快速入门python的极简教程,大概一千行左右,个人觉得不错,特此收藏以备后用. # _*_ coding: utf-8 _*_ """类型和运算- ...

  4. Python+OpenCV图像处理(十五)—— 圆检测

    简介: 1.霍夫圆变换的基本原理和霍夫线变换原理类似,只是点对应的二维极径.极角空间被三维的圆心和半径空间取代.在标准霍夫圆变换中,原图像的边缘图像的任意点对应的经过这个点的所有可能圆在三维空间用圆心 ...

  5. IE缓存清除

    原文转载自:http://blog.csdn.net/whatday/article/details/7566925 首先: 在  stdafx.h中要加入: #include "atlba ...

  6. JavaScript 字典

    JavaScript 字典 字典以 key value 形式出现 使用: a = {'k1':'v1,''k2':'v2'} 获取值: a['k1'] 获取值:v1

  7. Docker Weave 命令整理

    Docker Weave 命令整理 # 查看weave状态 weave status # 查看状态详情 weave status connections # 查看weave相互之间节点建立的关系 we ...

  8. day05数据类型,数字类型,字符串类型,字符串的操作方法,列表类型的操作方法,可变类型与不可变类型

    复习 ''' 流程控制 1.顺序结构.分支结构.循环结构 2.if分支结构 if 条件: 代码块 elif 条件: 代码块 else: 代码块 # 可以被if转换为False:0 | '' | Non ...

  9. linux --- 9. docker 容器 和 rabbitmq 队列

    一. docker 容器 1.docker是什么? .linux下容器技术有很多,docker是做的最杰出的一款 .docker能够支撑阿里双十一,京东618的业务,说明,性能,安全性不得差 .doc ...

  10. Spring错误——Spring xml注释——org.xml.sax.SAXParseException; lineNumber: 24; columnNumber: 10; cvc-complex-type.2.3: 元素 'beans' 必须不含字符 [子级], 因为该类型的内容类型为“仅元素”。

    背景:配置spring xml,注释xml中文件元素 错误: Caused by: org.xml.sax.SAXParseException; lineNumber: 24; columnNumbe ...