1. 本章学习总结

你对于本章知识的学习总结

2. 书面作业

1. 代码阅读

代码阅读

public class Test1 {
private int i = 1;//这行不能修改
private static int j = 2; public static void main(String[] args) {
geti();
Test1getj();
} public static void geti() {
System.out.println(i);
} public static void getj() {
System.out.println(j);
} }
  • 以上代码可否编译通过?哪里会出错?为什么?尝试改正?
  • 如果创建3个Test1对象,有内存中有几个i,几个j?

    Answer:编译没办法通过,System.out.println(i);会出错。因为静态方法不能调用一个非静态的成员变量,get是静态调用不能调用未经static修饰的变量。



    修改前代码:



    修改后代码:



    如果创建3个Test1对象,内存中会有1个i,1个j;j被static修饰后,在编译时由内存分配一块内存空间,该类的所有对象都会共享这块内存空间;i同理可证。

    2.构造函数有什么用?其编写格式是什么?如果一个类不写构造函数,它有构造函数吗?如果一个类中只有带参的构造函数,它有没有不带参数的默认构造函数?

    Answer:在定义类时,可以使用构造函数定义对象建立的初始流程。构造函数是与类名称同名,无需声明返回类型的方法,可以避免重复流程出现一般格式为pubic类名(){}。如果一个类不写构造函数,系统会自动加入一个无参数的内容为空的函数;如果你创造了一个带有参数的构造方法,那么无参的构造方法必须显式的写出来,否则会编译失败。

    3.使用java.lang.Math类的函数时,为什么不需要new?如果new Math()会产生什么错误?

    Answer:Math类所有的成员变量以及成员方法都是静态的,静态修饰的都可以直接用类名去调用而不需要用new;如果new Math()会提示这个构造函数不可见也就是不可以的意思。

    4.什么是重载?什么是构造函数重载?在java.lang.Math类中举出函数重载的例子?怎么才能区分两个重载函数?

    Answer:在Java 中,同一个类中的2个或2个以上的方法可以有同一个名字,只要它们的参数声明不同即可。在这种情况下,该方法就被称为重载(overloaded ),这个过程称为方法重载(method overloading );构造函数重载是指当构造函数没有构造方法时,系统会自动加上没有参数的构造函数;

    java.lang.Math中的例子:



    通过函数返回值和参数类型可以区分两个重载函数。

    5.final修饰的变量不能改变,为什么如下代码可以正常运行?

    final int[] NUMBS= {1,2,3,4,5}; NUMBS[2] = 1;

    Answer:对于基本类型final使数值恒定不变;而用于对象引用,final使引用恒定不变。所以NUMBS这个对象不能再被修改指向新的对象。但它所指向的对象本身的值是可以修改的。

    6.阅读代码EmployeeTest.java

    回答:

    为什么其属性均为private?这样设计有什么好处?

    Answer:使用private定义私有属性是希望用户不能随意操作私有数据,让用户无法直接存取,而必须通过提供的方法进行才能存取私有数据。增加了安全性隐私性。

    Employee类增加一个无参构造函数,调用其有参构造函数,设置name为雇员1, salary为3000, hireDay的年月日为2017年3月5日。(粘贴代码)



    Employee类再增加一个有参构造函数,参数只有name与salary,hideDay为当前日期。(粘贴代码)



    7.编写函数public static boolean isMondayToFriday()

    功能:判断今天如果是周一到周五,直接输出如“上班时间”并返回true,否则输出“休息时间”。

    提示:使用LocalDateTime, DayOfWeek

    参考资料:

    JAVA 8:健壮、易用的时间-日期API - ImportNew.pdf

    Java8DateTimeTest.java

3.本周Commit历史截图

在码云的项目中,依次选择“统计-Commits历史-设置时间段”,然后搜索并截图,如下图所示

4.PTA实验总结

题目集:jmu-Java-03-面向对象1-基础-封装继承 中的编程(5-1, 5-2, 5-3)

一定要有实验总结.

任何编程题目对我来说都好难好难,基础好差好差,一步步来吧... 这周学会了在eclipse中快速的进行编写set和get,点击Source –> Generate Getters and Setters自动生成Getter和Setter方法;函数用static修饰的时候可以使用类名,其他时候不可以。

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

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

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

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

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

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

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. .NET Standard 2.0 特性介绍和使用指南

    .NET Standard 2.0 发布日期:2017年8月14日 公告原文地址 前言 早上起来.NET社区沸腾了,期待已久的.NET Core 2.0终于发布!根据个人经验,微软的产品一般在2.0时 ...

  2. 普通程序员如何入门AI

    毫无疑问,人工智能是目前整个互联网领域最火的行业,随着AlphaGo战胜世界围棋冠军,以及各种无人驾驶.智能家居项目的布道,人们已经意识到了AI就是下一个风口.当然,程序员是我见过对于新技术最敏感的一 ...

  3. Linux - 简明Shell编程09 - 重定向(Redirection)

    脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash pwd > 1.log ...

  4. [ABP开源项目]--vue+vuex+vue-router+EF的权限管理系统

    好久没写文字了,当然大家也不期待嘛,反正看代码就行了. 演示网站 首先说下这个项目吧. 如标题一样是基于VUE+.NET开发的框架,也是群友一直吼吼吼要一个vue版本的ABP框架. 我们先来看看首页吧 ...

  5. python超简单的web服务器

    今天无意google时看见,心里突然想说,python做web服务器,用不用这么简单啊,看来是我大惊小怪了. web1.py   1 2 3 #!/usr/bin/python import Simp ...

  6. 巧妙利用JS中的自定义函数——化繁为简,提高效率

    利用自定义函数编写年月日时间表: (复杂写法)如下: <body>                <select id="year" size="1&q ...

  7. rpm中config,config(noreplace)区别

    问题描述 最近才知道公司安装新版本,不是rpm -e卸载再rpm -ivh安装,而是rpm -Uvh直接升级,导致了安装包里有些文件没有覆盖原有文件. 解决方法 找config,config(nore ...

  8. windows重装后,不重装oracle,直接恢复数据库

    windows重装后,不重装oracle,让原来的库可用的问题环境: windows 7/Oracle 11.2.0.1.0  64位 原来的Oracle安装在D盘.重装只格式化了C盘 1.修改注册表 ...

  9. OpenCms创建网站过程图解——献给OpenCms的初学者们

    很多人都听说了OpenCms,知道了它的强大,索性的下载安装了,终于见到了久违OpenCms,看到了它简洁的界面,欣喜过后却不免一脸茫然,这个东西怎么用,我怎么用它来建站,从哪开始,无从下手,找资料, ...

  10. IT类非开发面试总结--2

    面试总结.. ================================= 第一部分..(自己对公司的最低要求) 面试需要提前准备的是:<想好自己以后要干嘛--我在想我以后要干嘛> ...